{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "\n",
    "from graphviz import Digraph\n",
    "import networkx as nx\n",
    "import networkx.algorithms as nxa\n",
    "import re\n",
    "\n",
    "from dwave.system.samplers import DWaveSampler\n",
    "from dwave.system.composites import EmbeddingComposite\n",
    "from dwave.system import LeapHybridSampler\n",
    "\n",
    "import DeBruijnDNA\n",
    "import AcyclicGraphDNA\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "API_KEY = \"D-WAVE_OCEAN_SDK_API_KEY\" #API_KEY, register on https://www.dwavesys.com/take-leap"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "def solve_dwave(Q, API_KEY):\n",
    "    \"\"\"\n",
    "    Q = np.array([[-1, 1, 0], [1, -1, -2], [0, -2, -1]])\n",
    "    solve_dwave(Q)\n",
    "    \"\"\"\n",
    "    q = {}\n",
    "    size = len(Q)\n",
    "    for i in range(size):\n",
    "        for j in range(size):\n",
    "            q[(i,j)] = Q[i][j]\n",
    "            \n",
    "    sampler = LeapHybridSampler(token=API_KEY)\n",
    "    response = sampler.sample_qubo(q, num_reads=30, anneal_time=20)\n",
    "\n",
    "    result = []\n",
    "    for sample, energy in response.data(['sample', 'energy']): \n",
    "        result.append(sample)\n",
    "        result.append(energy)\n",
    "\n",
    "    result.append(response.info) # view timings\n",
    "    \n",
    "    return result"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 1. Hamiltonian path De Bruijn graph"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Generated by graphviz version 2.40.1 (20161225.0304)\n",
       " -->\n",
       "<!-- Title: %3 Pages: 1 -->\n",
       "<svg width=\"452pt\" height=\"430pt\"\n",
       " viewBox=\"0.00 0.00 452.32 430.50\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 426.4972)\">\n",
       "<title>%3</title>\n",
       "<polygon fill=\"#ffffff\" stroke=\"transparent\" points=\"-4,4 -4,-426.4972 448.3198,-426.4972 448.3198,4 -4,4\"/>\n",
       "<!-- CAT -->\n",
       "<g id=\"node1\" class=\"node\">\n",
       "<title>CAT</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"366.5636\" cy=\"-85.1145\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"366.5636\" y=\"-81.4145\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CAT</text>\n",
       "</g>\n",
       "<!-- ATA -->\n",
       "<g id=\"node2\" class=\"node\">\n",
       "<title>ATA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"250.3178\" cy=\"-18\" rx=\"29.795\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"250.3178\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">ATA</text>\n",
       "</g>\n",
       "<!-- CAT&#45;&gt;ATA -->\n",
       "<g id=\"edge1\" class=\"edge\">\n",
       "<title>CAT&#45;&gt;ATA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M344.6986,-72.4908C326.676,-62.0854 300.9093,-47.209 280.8508,-35.6282\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"282.495,-32.5361 272.0847,-30.5671 278.9949,-38.5983 282.495,-32.5361\"/>\n",
       "</g>\n",
       "<!-- TAC -->\n",
       "<g id=\"node3\" class=\"node\">\n",
       "<title>TAC</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"118.128\" cy=\"-381.1886\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"118.128\" y=\"-377.4886\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">TAC</text>\n",
       "</g>\n",
       "<!-- ATA&#45;&gt;TAC -->\n",
       "<g id=\"edge2\" class=\"edge\">\n",
       "<title>ATA&#45;&gt;TAC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M243.7625,-36.0106C222.2623,-95.0819 153.794,-283.197 128.0453,-353.9409\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"124.6983,-352.9036 124.567,-363.4976 131.2762,-355.2977 124.6983,-352.9036\"/>\n",
       "</g>\n",
       "<!-- TAA -->\n",
       "<g id=\"node4\" class=\"node\">\n",
       "<title>TAA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"118.128\" cy=\"-41.3086\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"118.128\" y=\"-37.6086\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">TAA</text>\n",
       "</g>\n",
       "<!-- ATA&#45;&gt;TAA -->\n",
       "<g id=\"edge3\" class=\"edge\">\n",
       "<title>ATA&#45;&gt;TAA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M221.3082,-23.1152C202.5836,-26.4168 177.9877,-30.7537 157.5069,-34.3651\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"156.767,-30.9414 147.5267,-36.1248 157.9826,-37.8351 156.767,-30.9414\"/>\n",
       "</g>\n",
       "<!-- ACA -->\n",
       "<g id=\"node5\" class=\"node\">\n",
       "<title>ACA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"412.4726\" cy=\"-211.2486\" rx=\"31.6951\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"412.4726\" y=\"-207.5486\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">ACA</text>\n",
       "</g>\n",
       "<!-- TAC&#45;&gt;ACA -->\n",
       "<g id=\"edge4\" class=\"edge\">\n",
       "<title>TAC&#45;&gt;ACA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M140.2517,-368.4155C192.0303,-338.5211 321.2297,-263.9278 381.101,-229.3611\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"383.182,-232.2011 390.0922,-224.17 379.6819,-226.1389 383.182,-232.2011\"/>\n",
       "</g>\n",
       "<!-- ACC -->\n",
       "<g id=\"node6\" class=\"node\">\n",
       "<title>ACC</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"250.3178\" cy=\"-404.4972\" rx=\"32.4942\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"250.3178\" y=\"-400.7972\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">ACC</text>\n",
       "</g>\n",
       "<!-- TAC&#45;&gt;ACC -->\n",
       "<g id=\"edge5\" class=\"edge\">\n",
       "<title>TAC&#45;&gt;ACC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M147.4652,-386.3615C165.6014,-389.5594 189.1518,-393.712 209.1403,-397.2365\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"208.7649,-400.7242 219.2207,-399.014 209.9805,-393.8306 208.7649,-400.7242\"/>\n",
       "</g>\n",
       "<!-- ACA&#45;&gt;CAT -->\n",
       "<g id=\"edge6\" class=\"edge\">\n",
       "<title>ACA&#45;&gt;CAT</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M405.9924,-193.4442C398.3022,-172.3158 385.3983,-136.8624 376.457,-112.2964\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"379.7201,-111.0282 373.0109,-102.8284 373.1422,-113.4224 379.7201,-111.0282\"/>\n",
       "</g>\n",
       "<!-- CAC -->\n",
       "<g id=\"node7\" class=\"node\">\n",
       "<title>CAC</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"366.5636\" cy=\"-337.3827\" rx=\"32.4942\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"366.5636\" y=\"-333.6827\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CAC</text>\n",
       "</g>\n",
       "<!-- ACA&#45;&gt;CAC -->\n",
       "<g id=\"edge7\" class=\"edge\">\n",
       "<title>ACA&#45;&gt;CAC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M401.0421,-228.1653C391.2071,-248.8958 378.1016,-284.2688 370.8766,-309.1416\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"367.4193,-308.5168 368.1669,-319.0852 374.173,-310.3573 367.4193,-308.5168\"/>\n",
       "</g>\n",
       "<!-- CCT -->\n",
       "<g id=\"node8\" class=\"node\">\n",
       "<title>CCT</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"31.8472\" cy=\"-278.3632\" rx=\"31.6951\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"31.8472\" y=\"-274.6632\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CCT</text>\n",
       "</g>\n",
       "<!-- ACC&#45;&gt;CCT -->\n",
       "<g id=\"edge10\" class=\"edge\">\n",
       "<title>ACC&#45;&gt;CCT</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M227.7605,-391.4737C188.4926,-368.8024 107.5172,-322.0513 62.9492,-296.3199\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"64.6921,-293.2847 54.2818,-291.3158 61.192,-299.3469 64.6921,-293.2847\"/>\n",
       "</g>\n",
       "<!-- CAC&#45;&gt;ACA -->\n",
       "<g id=\"edge8\" class=\"edge\">\n",
       "<title>CAC&#45;&gt;ACA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M377.9942,-320.466C387.8291,-299.7355 400.9347,-264.3625 408.1596,-239.4897\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"411.6169,-240.1145 410.8693,-229.5461 404.8632,-238.274 411.6169,-240.1145\"/>\n",
       "</g>\n",
       "<!-- CAC&#45;&gt;ACC -->\n",
       "<g id=\"edge9\" class=\"edge\">\n",
       "<title>CAC&#45;&gt;ACC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M343.8743,-350.4824C326.1919,-360.6913 301.4342,-374.9851 281.8286,-386.3045\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"279.8601,-383.3994 272.9499,-391.4306 283.3602,-389.4616 279.8601,-383.3994\"/>\n",
       "</g>\n",
       "<!-- CTA -->\n",
       "<g id=\"node9\" class=\"node\">\n",
       "<title>CTA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"31.8472\" cy=\"-144.1341\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"31.8472\" y=\"-140.4341\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CTA</text>\n",
       "</g>\n",
       "<!-- CCT&#45;&gt;CTA -->\n",
       "<g id=\"edge11\" class=\"edge\">\n",
       "<title>CCT&#45;&gt;CTA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M31.8472,-260.2604C31.8472,-237.7441 31.8472,-199.0452 31.8472,-172.5573\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"35.3473,-172.3787 31.8472,-162.3787 28.3473,-172.3787 35.3473,-172.3787\"/>\n",
       "</g>\n",
       "<!-- CTA&#45;&gt;TAC -->\n",
       "<g id=\"edge12\" class=\"edge\">\n",
       "<title>CTA&#45;&gt;TAC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M38.3323,-161.9517C53.2968,-203.0664 90.3223,-304.7932 108.1804,-353.8578\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"104.9761,-355.2877 111.6853,-363.4876 111.554,-352.8936 104.9761,-355.2877\"/>\n",
       "</g>\n",
       "<!-- CTA&#45;&gt;TAA -->\n",
       "<g id=\"edge13\" class=\"edge\">\n",
       "<title>CTA&#45;&gt;TAA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M45.7097,-127.6134C59.8814,-110.7242 82.0342,-84.3235 98.1085,-65.1669\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"100.8376,-67.3595 104.5843,-57.4493 95.4753,-62.86 100.8376,-67.3595\"/>\n",
       "</g>\n",
       "</g>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<graphviz.dot.Digraph at 0x7fb8f41a86d8>"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "seq = 'CATACACCTAA'\n",
    "kmer_len, suffix_len = 3, 2\n",
    "adj, node_labels = DeBruijnDNA.make_debr(seq, kmer_len=kmer_len, suffix_len=suffix_len)\n",
    "\n",
    "g, nodes = DeBruijnDNA.draw_graph(adj, node_labels, [], kmer_len = kmer_len)\n",
    "g.engine = 'circo'\n",
    "Q = DeBruijnDNA.to_qubo(adj)\n",
    "\n",
    "g"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Generated by graphviz version 2.40.1 (20161225.0304)\n",
       " -->\n",
       "<!-- Title: %3 Pages: 1 -->\n",
       "<svg width=\"452pt\" height=\"430pt\"\n",
       " viewBox=\"0.00 0.00 452.32 430.50\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 426.4972)\">\n",
       "<title>%3</title>\n",
       "<polygon fill=\"#ffffff\" stroke=\"transparent\" points=\"-4,4 -4,-426.4972 448.3198,-426.4972 448.3198,4 -4,4\"/>\n",
       "<!-- CAT -->\n",
       "<g id=\"node1\" class=\"node\">\n",
       "<title>CAT</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"366.5636\" cy=\"-85.1145\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"366.5636\" y=\"-81.4145\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CAT</text>\n",
       "</g>\n",
       "<!-- ATA -->\n",
       "<g id=\"node2\" class=\"node\">\n",
       "<title>ATA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"250.3178\" cy=\"-18\" rx=\"29.795\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"250.3178\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">ATA</text>\n",
       "</g>\n",
       "<!-- CAT&#45;&gt;ATA -->\n",
       "<g id=\"edge1\" class=\"edge\">\n",
       "<title>CAT&#45;&gt;ATA</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M344.6986,-72.4908C326.676,-62.0854 300.9093,-47.209 280.8508,-35.6282\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"282.495,-32.5361 272.0847,-30.5671 278.9949,-38.5983 282.495,-32.5361\"/>\n",
       "<text text-anchor=\"middle\" x=\"306.2747\" y=\"-60.0595\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">3</text>\n",
       "</g>\n",
       "<!-- TAC -->\n",
       "<g id=\"node3\" class=\"node\">\n",
       "<title>TAC</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"118.128\" cy=\"-381.1886\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"118.128\" y=\"-377.4886\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">TAC</text>\n",
       "</g>\n",
       "<!-- ATA&#45;&gt;TAC -->\n",
       "<g id=\"edge2\" class=\"edge\">\n",
       "<title>ATA&#45;&gt;TAC</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M243.7625,-36.0106C222.2623,-95.0819 153.794,-283.197 128.0453,-353.9409\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"124.6983,-352.9036 124.567,-363.4976 131.2762,-355.2977 124.6983,-352.9036\"/>\n",
       "<text text-anchor=\"middle\" x=\"179.4039\" y=\"-200.9757\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">4</text>\n",
       "</g>\n",
       "<!-- TAA -->\n",
       "<g id=\"node4\" class=\"node\">\n",
       "<title>TAA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"118.128\" cy=\"-41.3086\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"118.128\" y=\"-37.6086\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">TAA</text>\n",
       "</g>\n",
       "<!-- ATA&#45;&gt;TAA -->\n",
       "<g id=\"edge3\" class=\"edge\">\n",
       "<title>ATA&#45;&gt;TAA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M221.3082,-23.1152C202.5836,-26.4168 177.9877,-30.7537 157.5069,-34.3651\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"156.767,-30.9414 147.5267,-36.1248 157.9826,-37.8351 156.767,-30.9414\"/>\n",
       "</g>\n",
       "<!-- ACA -->\n",
       "<g id=\"node5\" class=\"node\">\n",
       "<title>ACA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"412.4726\" cy=\"-211.2486\" rx=\"31.6951\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"412.4726\" y=\"-207.5486\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">ACA</text>\n",
       "</g>\n",
       "<!-- TAC&#45;&gt;ACA -->\n",
       "<g id=\"edge4\" class=\"edge\">\n",
       "<title>TAC&#45;&gt;ACA</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M140.2517,-368.4155C192.0303,-338.5211 321.2297,-263.9278 381.101,-229.3611\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"383.182,-232.2011 390.0922,-224.17 379.6819,-226.1389 383.182,-232.2011\"/>\n",
       "</g>\n",
       "<!-- ACC -->\n",
       "<g id=\"node6\" class=\"node\">\n",
       "<title>ACC</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"250.3178\" cy=\"-404.4972\" rx=\"32.4942\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"250.3178\" y=\"-400.7972\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">ACC</text>\n",
       "</g>\n",
       "<!-- TAC&#45;&gt;ACC -->\n",
       "<g id=\"edge5\" class=\"edge\">\n",
       "<title>TAC&#45;&gt;ACC</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M147.4652,-386.3615C165.6014,-389.5594 189.1518,-393.712 209.1403,-397.2365\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"208.7649,-400.7242 219.2207,-399.014 209.9805,-393.8306 208.7649,-400.7242\"/>\n",
       "<text text-anchor=\"middle\" x=\"171.8027\" y=\"-397.799\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">5</text>\n",
       "</g>\n",
       "<!-- ACA&#45;&gt;CAT -->\n",
       "<g id=\"edge6\" class=\"edge\">\n",
       "<title>ACA&#45;&gt;CAT</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M405.9924,-193.4442C398.3022,-172.3158 385.3983,-136.8624 376.457,-112.2964\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"379.7201,-111.0282 373.0109,-102.8284 373.1422,-113.4224 379.7201,-111.0282\"/>\n",
       "<text text-anchor=\"middle\" x=\"384.7247\" y=\"-158.8703\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">2</text>\n",
       "</g>\n",
       "<!-- CAC -->\n",
       "<g id=\"node7\" class=\"node\">\n",
       "<title>CAC</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"366.5636\" cy=\"-337.3827\" rx=\"32.4942\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"366.5636\" y=\"-333.6827\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CAC</text>\n",
       "</g>\n",
       "<!-- ACA&#45;&gt;CAC -->\n",
       "<g id=\"edge7\" class=\"edge\">\n",
       "<title>ACA&#45;&gt;CAC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M401.0421,-228.1653C391.2071,-248.8958 378.1016,-284.2688 370.8766,-309.1416\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"367.4193,-308.5168 368.1669,-319.0852 374.173,-310.3573 367.4193,-308.5168\"/>\n",
       "</g>\n",
       "<!-- CCT -->\n",
       "<g id=\"node8\" class=\"node\">\n",
       "<title>CCT</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"31.8472\" cy=\"-278.3632\" rx=\"31.6951\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"31.8472\" y=\"-274.6632\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CCT</text>\n",
       "</g>\n",
       "<!-- ACC&#45;&gt;CCT -->\n",
       "<g id=\"edge10\" class=\"edge\">\n",
       "<title>ACC&#45;&gt;CCT</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M227.7605,-391.4737C188.4926,-368.8024 107.5172,-322.0513 62.9492,-296.3199\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"64.6921,-293.2847 54.2818,-291.3158 61.192,-299.3469 64.6921,-293.2847\"/>\n",
       "<text text-anchor=\"middle\" x=\"138.8548\" y=\"-327.8968\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">6</text>\n",
       "</g>\n",
       "<!-- CAC&#45;&gt;ACA -->\n",
       "<g id=\"edge8\" class=\"edge\">\n",
       "<title>CAC&#45;&gt;ACA</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M377.9942,-320.466C387.8291,-299.7355 400.9347,-264.3625 408.1596,-239.4897\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"411.6169,-240.1145 410.8693,-229.5461 404.8632,-238.274 411.6169,-240.1145\"/>\n",
       "<text text-anchor=\"middle\" x=\"386.5769\" y=\"-285.9778\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">1</text>\n",
       "</g>\n",
       "<!-- CAC&#45;&gt;ACC -->\n",
       "<g id=\"edge9\" class=\"edge\">\n",
       "<title>CAC&#45;&gt;ACC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M343.8743,-350.4824C326.1919,-360.6913 301.4342,-374.9851 281.8286,-386.3045\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"279.8601,-383.3994 272.9499,-391.4306 283.3602,-389.4616 279.8601,-383.3994\"/>\n",
       "</g>\n",
       "<!-- CTA -->\n",
       "<g id=\"node9\" class=\"node\">\n",
       "<title>CTA</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"31.8472\" cy=\"-144.1341\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"31.8472\" y=\"-140.4341\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">CTA</text>\n",
       "</g>\n",
       "<!-- CCT&#45;&gt;CTA -->\n",
       "<g id=\"edge11\" class=\"edge\">\n",
       "<title>CCT&#45;&gt;CTA</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M31.8472,-260.2604C31.8472,-237.7441 31.8472,-199.0452 31.8472,-172.5573\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"35.3473,-172.3787 31.8472,-162.3787 28.3473,-172.3787 35.3473,-172.3787\"/>\n",
       "<text text-anchor=\"middle\" x=\"25.3472\" y=\"-222.4089\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">7</text>\n",
       "</g>\n",
       "<!-- CTA&#45;&gt;TAC -->\n",
       "<g id=\"edge12\" class=\"edge\">\n",
       "<title>CTA&#45;&gt;TAC</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M38.3323,-161.9517C53.2968,-203.0664 90.3223,-304.7932 108.1804,-353.8578\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"104.9761,-355.2877 111.6853,-363.4876 111.554,-352.8936 104.9761,-355.2877\"/>\n",
       "</g>\n",
       "<!-- CTA&#45;&gt;TAA -->\n",
       "<g id=\"edge13\" class=\"edge\">\n",
       "<title>CTA&#45;&gt;TAA</title>\n",
       "<path fill=\"none\" stroke=\"#000000\" d=\"M45.7097,-127.6134C59.8814,-110.7242 82.0342,-84.3235 98.1085,-65.1669\"/>\n",
       "<polygon fill=\"#000000\" stroke=\"#000000\" points=\"100.8376,-67.3595 104.5843,-57.4493 95.4753,-62.86 100.8376,-67.3595\"/>\n",
       "<text text-anchor=\"middle\" x=\"65.4091\" y=\"-102.3902\" font-family=\"Times,serif\" font-size=\"20.00\" fill=\"#ff0000\">8</text>\n",
       "</g>\n",
       "</g>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<graphviz.dot.Digraph at 0x7fb8bd4317f0>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "target_energy = -np.sqrt(len(Q))\n",
    "solution = solve_dwave(Q, API_KEY=API_KEY)\n",
    "spins, energy = [solution[0][i] for i in solution[0].keys()], solution[1]\n",
    "\n",
    "g, nodes = DeBruijnDNA.draw_graph(adj, node_labels, path_spins=spins, kmer_len=kmer_len)\n",
    "g.engine = 'circo'\n",
    "g"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 2. Hamiltonian path in acyclic graph\n",
    "\n",
    "### use spec for input gfa file: http://gfa-spec.github.io/GFA-spec/GFA1.html"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "segments: 50, links: 248, containments: 0, lines: 299\n",
      "\n",
      "nodes quantity: 100\n",
      "links quantity:  496\n"
     ]
    }
   ],
   "source": [
    "filename = \"phi-x.600l.gfa\"\n",
    "segments, links, containments = AcyclicGraphDNA.load_file(filename)\n",
    "\n",
    "initial_graph, adjacency_matrix, nodes_indices, nodes_labels, links_edges = AcyclicGraphDNA.get_initial_graph(segments, links)\n",
    "strand_graph = AcyclicGraphDNA.get_strand_graph(initial_graph)\n",
    "\n",
    "print('links quantity: ', len(links_edges))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "strand_adjacency_matrix size: 50\n"
     ]
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Generated by graphviz version 2.40.1 (20161225.0304)\n",
       " -->\n",
       "<!-- Title: %3 Pages: 1 -->\n",
       "<svg width=\"340pt\" height=\"875pt\"\n",
       " viewBox=\"0.00 0.00 340.12 875.31\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 871.3081)\">\n",
       "<title>%3</title>\n",
       "<polygon fill=\"#ffffff\" stroke=\"transparent\" points=\"-4,4 -4,-871.3081 336.1221,-871.3081 336.1221,4 -4,4\"/>\n",
       "<!-- 3&#45; -->\n",
       "<g id=\"node1\" class=\"node\">\n",
       "<title>3&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"272.6578\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"272.6578\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">3&#45;</text>\n",
       "</g>\n",
       "<!-- 5+ -->\n",
       "<g id=\"node2\" class=\"node\">\n",
       "<title>5+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"249.2881\" cy=\"-99.4063\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"249.2881\" y=\"-95.7063\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">5+</text>\n",
       "</g>\n",
       "<!-- 3&#45;&#45;&gt;5+ -->\n",
       "<g id=\"edge1\" class=\"edge\">\n",
       "<title>3&#45;&#45;&gt;5+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M267.4713,-36.0667C264.4552,-46.5731 260.5921,-60.03 257.2029,-71.8359\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"253.775,-71.0926 254.3797,-81.6702 260.5032,-73.0242 253.775,-71.0926\"/>\n",
       "</g>\n",
       "<!-- 8+ -->\n",
       "<g id=\"node3\" class=\"node\">\n",
       "<title>8+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"304.4344\" cy=\"-105.6542\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"304.4344\" y=\"-101.9542\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">8+</text>\n",
       "</g>\n",
       "<!-- 3&#45;&#45;&gt;8+ -->\n",
       "<g id=\"edge2\" class=\"edge\">\n",
       "<title>3&#45;&#45;&gt;8+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M279.0883,-35.7381C283.5246,-47.9755 289.5076,-64.4795 294.5467,-78.3795\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"291.3148,-79.734 298.0135,-87.9425 297.8957,-77.3483 291.3148,-79.734\"/>\n",
       "</g>\n",
       "<!-- 28&#45; -->\n",
       "<g id=\"node4\" class=\"node\">\n",
       "<title>28&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"211.3696\" cy=\"-84.6486\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"211.3696\" y=\"-80.9486\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">28&#45;</text>\n",
       "</g>\n",
       "<!-- 3&#45;&#45;&gt;28&#45; -->\n",
       "<g id=\"edge3\" class=\"edge\">\n",
       "<title>3&#45;&#45;&gt;28&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M258.443,-33.4581C250.7076,-41.87 240.9893,-52.4383 232.3945,-61.7848\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"229.6999,-59.5444 225.5073,-69.2744 234.8525,-64.2826 229.6999,-59.5444\"/>\n",
       "</g>\n",
       "<!-- 38+ -->\n",
       "<g id=\"node5\" class=\"node\">\n",
       "<title>38+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"301.5748\" cy=\"-77.2211\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"301.5748\" y=\"-73.5211\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">38+</text>\n",
       "</g>\n",
       "<!-- 3&#45;&#45;&gt;38+ -->\n",
       "<g id=\"edge4\" class=\"edge\">\n",
       "<title>3&#45;&#45;&gt;38+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M281.0218,-35.1292C283.357,-39.9117 285.9519,-45.2259 288.4898,-50.4235\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"285.3952,-52.0628 292.9281,-59.513 291.6854,-48.9913 285.3952,-52.0628\"/>\n",
       "</g>\n",
       "<!-- 41+ -->\n",
       "<g id=\"node6\" class=\"node\">\n",
       "<title>41+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"225.6958\" cy=\"-55.1159\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"225.6958\" y=\"-51.4159\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">41+</text>\n",
       "</g>\n",
       "<!-- 3&#45;&#45;&gt;41+ -->\n",
       "<g id=\"edge5\" class=\"edge\">\n",
       "<title>3&#45;&#45;&gt;41+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M255.1709,-31.8206C254.144,-32.6321 253.1008,-33.4566 252.0498,-34.2873\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"249.6581,-31.7164 243.9828,-40.6629 253.9986,-37.2082 249.6581,-31.7164\"/>\n",
       "</g>\n",
       "<!-- 48+ -->\n",
       "<g id=\"node7\" class=\"node\">\n",
       "<title>48+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"267.35\" cy=\"-65.6213\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"267.35\" y=\"-61.9213\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">48+</text>\n",
       "</g>\n",
       "<!-- 3&#45;&#45;&gt;48+ -->\n",
       "<g id=\"edge6\" class=\"edge\">\n",
       "<title>3&#45;&#45;&gt;48+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M270.6511,-36.0036C270.5983,-36.4777 270.5451,-36.955 270.4916,-37.4349\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"266.9888,-37.2661 269.3595,-47.5923 273.9458,-38.0415 266.9888,-37.2661\"/>\n",
       "</g>\n",
       "<!-- 5+&#45;&gt;28&#45; -->\n",
       "<g id=\"edge7\" class=\"edge\">\n",
       "<title>5+&#45;&gt;28&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M225.9214,-90.3121C225.8605,-90.2884 225.7996,-90.2647 225.7387,-90.241\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"236.1464,-90.5385 225.5564,-90.1701 233.6053,-97.0621 236.1464,-90.5385\"/>\n",
       "</g>\n",
       "<!-- 9+ -->\n",
       "<g id=\"node8\" class=\"node\">\n",
       "<title>9+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"251.2507\" cy=\"-147.5426\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"251.2507\" y=\"-143.8426\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">9+</text>\n",
       "</g>\n",
       "<!-- 5+&#45;&gt;9+ -->\n",
       "<g id=\"edge8\" class=\"edge\">\n",
       "<title>5+&#45;&gt;9+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M250.0301,-117.6046C250.0496,-118.0838 250.0693,-118.5663 250.0891,-119.0514\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"246.6031,-119.4695 250.5077,-129.3186 253.5973,-119.1843 246.6031,-119.4695\"/>\n",
       "</g>\n",
       "<!-- 34+ -->\n",
       "<g id=\"node9\" class=\"node\">\n",
       "<title>34+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"188.5228\" cy=\"-152.2383\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"188.5228\" y=\"-148.5383\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">34+</text>\n",
       "</g>\n",
       "<!-- 5+&#45;&gt;34+ -->\n",
       "<g id=\"edge9\" class=\"edge\">\n",
       "<title>5+&#45;&gt;34+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M232.6837,-113.8429C226.8527,-118.9126 220.1627,-124.7291 213.783,-130.2759\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"211.2061,-127.8785 205.956,-137.0811 215.799,-133.1611 211.2061,-127.8785\"/>\n",
       "</g>\n",
       "<!-- 8+&#45;&gt;5+ -->\n",
       "<g id=\"edge10\" class=\"edge\">\n",
       "<title>8+&#45;&gt;5+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M277.5074,-102.6035C277.3981,-102.5911 277.2887,-102.5787 277.1793,-102.5663\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"286.5256,-100.1037 276.1949,-102.4548 285.737,-107.0592 286.5256,-100.1037\"/>\n",
       "</g>\n",
       "<!-- 8+&#45;&gt;28&#45; -->\n",
       "<g id=\"edge11\" class=\"edge\">\n",
       "<title>8+&#45;&gt;28&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M278.5106,-99.803C268.7288,-97.5951 257.4243,-95.0436 246.9132,-92.6712\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"247.6795,-89.2561 237.1543,-90.4685 246.1383,-96.0844 247.6795,-89.2561\"/>\n",
       "</g>\n",
       "<!-- 8+&#45;&gt;9+ -->\n",
       "<g id=\"edge12\" class=\"edge\">\n",
       "<title>8+&#45;&gt;9+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M286.725,-119.6025C283.4615,-122.1728 279.9964,-124.902 276.56,-127.6086\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"274.3921,-124.8607 268.7018,-133.7978 278.7234,-130.3599 274.3921,-124.8607\"/>\n",
       "</g>\n",
       "<!-- 28&#45;&#45;&gt;9+ -->\n",
       "<g id=\"edge13\" class=\"edge\">\n",
       "<title>28&#45;&#45;&gt;9+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M222.057,-101.5031C226.0803,-107.848 230.7494,-115.2113 235.1576,-122.1633\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"232.2227,-124.0707 240.5338,-130.6417 238.1344,-120.3221 232.2227,-124.0707\"/>\n",
       "</g>\n",
       "<!-- 28&#45;&#45;&gt;34+ -->\n",
       "<g id=\"edge14\" class=\"edge\">\n",
       "<title>28&#45;&#45;&gt;34+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M205.3668,-102.407C203.0503,-109.2603 200.3466,-117.2589 197.792,-124.8164\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"194.4513,-123.7696 194.5647,-134.3638 201.0827,-126.0112 194.4513,-123.7696\"/>\n",
       "</g>\n",
       "<!-- 38+&#45;&gt;5+ -->\n",
       "<g id=\"edge15\" class=\"edge\">\n",
       "<title>38+&#45;&gt;5+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M276.6565,-87.7939C276.5645,-87.833 276.4724,-87.8721 276.3803,-87.9111\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"280.0794,-82.5394 272.2408,-89.6675 282.8136,-88.9834 280.0794,-82.5394\"/>\n",
       "</g>\n",
       "<!-- 38+&#45;&gt;8+ -->\n",
       "<g id=\"edge16\" class=\"edge\">\n",
       "<title>38+&#45;&gt;8+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M303.402,-95.3892C303.4064,-95.4328 303.4107,-95.4762 303.4151,-95.5197\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"298.9382,-86.0526 303.4282,-95.6498 305.9031,-85.3473 298.9382,-86.0526\"/>\n",
       "</g>\n",
       "<!-- 38+&#45;&gt;28&#45; -->\n",
       "<g id=\"edge17\" class=\"edge\">\n",
       "<title>38+&#45;&gt;28&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M271.2868,-79.7151C263.9677,-80.3177 256.063,-80.9686 248.4709,-81.5937\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"248.0749,-78.1144 238.3959,-82.4233 248.6494,-85.0908 248.0749,-78.1144\"/>\n",
       "</g>\n",
       "<!-- 38+&#45;&gt;41+ -->\n",
       "<g id=\"edge18\" class=\"edge\">\n",
       "<title>38+&#45;&gt;41+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M274.1807,-69.2406C270.5724,-68.1895 266.8259,-67.098 263.0865,-66.0086\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"263.8843,-62.5956 253.3045,-63.1589 261.9264,-69.3163 263.8843,-62.5956\"/>\n",
       "</g>\n",
       "<!-- 38+&#45;&gt;9+ -->\n",
       "<g id=\"edge19\" class=\"edge\">\n",
       "<title>38+&#45;&gt;9+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M289.6487,-93.8864C283.5068,-102.4689 275.894,-113.1067 269.0707,-122.6414\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"266.0646,-120.828 263.0912,-130.9971 271.7571,-124.9018 266.0646,-120.828\"/>\n",
       "</g>\n",
       "<!-- 41+&#45;&gt;5+ -->\n",
       "<g id=\"edge20\" class=\"edge\">\n",
       "<title>41+&#45;&gt;5+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M234.8847,-72.3665C235.0497,-72.6762 235.2154,-72.9872 235.3816,-73.2994\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"232.45,-75.2405 240.2405,-82.421 238.6282,-71.9495 232.45,-75.2405\"/>\n",
       "</g>\n",
       "<!-- 41+&#45;&gt;8+ -->\n",
       "<g id=\"edge21\" class=\"edge\">\n",
       "<title>41+&#45;&gt;8+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M246.3834,-68.3942C255.5233,-74.2607 266.412,-81.2496 276.2763,-87.5809\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"274.6615,-90.7034 284.9677,-93.1596 278.4426,-84.8125 274.6615,-90.7034\"/>\n",
       "</g>\n",
       "<!-- 41+&#45;&gt;28&#45; -->\n",
       "<g id=\"edge22\" class=\"edge\">\n",
       "<title>41+&#45;&gt;28&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M217.1966,-72.6365C217.1725,-72.6862 217.1484,-72.7358 217.1243,-72.7854\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"218.2709,-62.4074 217.0522,-72.9341 224.5694,-65.465 218.2709,-62.4074\"/>\n",
       "</g>\n",
       "<!-- 41+&#45;&gt;9+ -->\n",
       "<g id=\"edge23\" class=\"edge\">\n",
       "<title>41+&#45;&gt;9+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M230.623,-72.9367C234.2997,-86.2346 239.3923,-104.6535 243.5974,-119.8624\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"240.3002,-121.0709 246.3386,-129.7765 247.047,-119.2054 240.3002,-121.0709\"/>\n",
       "</g>\n",
       "<!-- 48+&#45;&gt;5+ -->\n",
       "<g id=\"edge24\" class=\"edge\">\n",
       "<title>48+&#45;&gt;5+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M258.1074,-82.9097C258.0727,-82.9746 258.038,-83.0395 258.0033,-83.1045\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"259.5294,-72.8288 257.8992,-83.2992 265.703,-76.1308 259.5294,-72.8288\"/>\n",
       "</g>\n",
       "<!-- 48+&#45;&gt;8+ -->\n",
       "<g id=\"edge25\" class=\"edge\">\n",
       "<title>48+&#45;&gt;8+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M282.0067,-81.4433C282.4243,-81.8941 282.8446,-82.3478 283.2668,-82.8036\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"280.763,-85.2511 290.1264,-90.2086 285.8983,-80.494 280.763,-85.2511\"/>\n",
       "</g>\n",
       "<!-- 48+&#45;&gt;28&#45; -->\n",
       "<g id=\"edge26\" class=\"edge\">\n",
       "<title>48+&#45;&gt;28&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M240.6714,-74.6891C240.5658,-74.725 240.4601,-74.7609 240.3545,-74.7968\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"243.9496,-69.8781 235.608,-76.4102 246.2024,-76.5057 243.9496,-69.8781\"/>\n",
       "</g>\n",
       "<!-- 48+&#45;&gt;38+ -->\n",
       "<g id=\"edge27\" class=\"edge\">\n",
       "<title>48+&#45;&gt;38+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M293.9792,-74.6468C294.0483,-74.6702 294.117,-74.6935 294.1854,-74.7166\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"283.7941,-74.8877 294.3897,-74.7859 286.0433,-68.2579 283.7941,-74.8877\"/>\n",
       "</g>\n",
       "<!-- 48+&#45;&gt;41+ -->\n",
       "<g id=\"edge28\" class=\"edge\">\n",
       "<title>48+&#45;&gt;41+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M238.8754,-58.4398C238.8182,-58.4254 238.7611,-58.411 238.7041,-58.3966\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"249.0872,-57.4095 238.5333,-58.3536 247.3724,-64.1971 249.0872,-57.4095\"/>\n",
       "</g>\n",
       "<!-- 48+&#45;&gt;9+ -->\n",
       "<g id=\"edge29\" class=\"edge\">\n",
       "<title>48+&#45;&gt;9+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M263.777,-83.8023C261.6992,-94.3752 259.0379,-107.9172 256.7031,-119.7978\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"253.2524,-119.2071 254.7583,-129.6943 260.121,-120.5569 253.2524,-119.2071\"/>\n",
       "</g>\n",
       "<!-- 9+&#45;&gt;34+ -->\n",
       "<g id=\"edge30\" class=\"edge\">\n",
       "<title>9+&#45;&gt;34+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M224.2844,-149.5613C224.1764,-149.5694 224.0684,-149.5774 223.9604,-149.5855\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"228.7821,-145.7146 219.0713,-149.9515 229.3047,-152.6951 228.7821,-145.7146\"/>\n",
       "</g>\n",
       "<!-- 21&#45; -->\n",
       "<g id=\"node22\" class=\"node\">\n",
       "<title>21&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"192.5902\" cy=\"-208.8717\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"192.5902\" y=\"-205.1717\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">21&#45;</text>\n",
       "</g>\n",
       "<!-- 9+&#45;&gt;21&#45; -->\n",
       "<g id=\"edge31\" class=\"edge\">\n",
       "<title>9+&#45;&gt;21&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M236.4482,-163.0185C229.7279,-170.0445 221.6463,-178.4938 214.2613,-186.2147\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"211.5676,-183.9674 207.1848,-193.6132 216.6262,-188.8059 211.5676,-183.9674\"/>\n",
       "</g>\n",
       "<!-- 39+ -->\n",
       "<g id=\"node23\" class=\"node\">\n",
       "<title>39+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"222.4991\" cy=\"-220.1044\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"222.4991\" y=\"-216.4044\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">39+</text>\n",
       "</g>\n",
       "<!-- 9+&#45;&gt;39+ -->\n",
       "<g id=\"edge32\" class=\"edge\">\n",
       "<title>9+&#45;&gt;39+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M244.2907,-165.1078C240.9604,-173.5128 236.8988,-183.7632 233.1885,-193.127\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"229.9245,-191.8634 229.4946,-202.4495 236.4323,-194.442 229.9245,-191.8634\"/>\n",
       "</g>\n",
       "<!-- 50&#45; -->\n",
       "<g id=\"node24\" class=\"node\">\n",
       "<title>50&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"251.0835\" cy=\"-220.8347\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"251.0835\" y=\"-217.1347\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">50&#45;</text>\n",
       "</g>\n",
       "<!-- 9+&#45;&gt;50&#45; -->\n",
       "<g id=\"edge33\" class=\"edge\">\n",
       "<title>9+&#45;&gt;50&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M251.2094,-165.6598C251.1909,-173.7643 251.1686,-183.5096 251.1481,-192.5402\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"247.6479,-192.664 251.1249,-202.6719 254.6478,-192.68 247.6479,-192.664\"/>\n",
       "</g>\n",
       "<!-- 34+&#45;&gt;21&#45; -->\n",
       "<g id=\"edge34\" class=\"edge\">\n",
       "<title>34+&#45;&gt;21&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M189.8321,-170.4692C190.0643,-173.7027 190.3111,-177.1381 190.5578,-180.5731\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"187.0758,-180.9514 191.2833,-190.6749 194.0578,-180.4499 187.0758,-180.9514\"/>\n",
       "</g>\n",
       "<!-- 34+&#45;&gt;39+ -->\n",
       "<g id=\"edge35\" class=\"edge\">\n",
       "<title>34+&#45;&gt;39+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M197.2725,-169.7155C200.8903,-176.9419 205.1658,-185.4821 209.1591,-193.4585\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"206.0544,-195.0754 213.6609,-202.4506 212.3138,-191.9417 206.0544,-195.0754\"/>\n",
       "</g>\n",
       "<!-- 34+&#45;&gt;50&#45; -->\n",
       "<g id=\"edge36\" class=\"edge\">\n",
       "<title>34+&#45;&gt;50&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M203.0327,-168.1481C211.0076,-176.8924 221.0474,-187.9007 229.8849,-197.5909\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"227.3276,-199.981 236.6523,-205.0111 232.4997,-195.264 227.3276,-199.981\"/>\n",
       "</g>\n",
       "<!-- 45&#45; -->\n",
       "<g id=\"node43\" class=\"node\">\n",
       "<title>45&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"154.9762\" cy=\"-222.4174\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"154.9762\" y=\"-218.7174\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">45&#45;</text>\n",
       "</g>\n",
       "<!-- 34+&#45;&gt;45&#45; -->\n",
       "<g id=\"edge37\" class=\"edge\">\n",
       "<title>34+&#45;&gt;45&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M180.2304,-169.5859C176.4687,-177.4553 171.9348,-186.9402 167.7528,-195.6889\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"164.5613,-194.2501 163.4062,-204.7818 170.8768,-197.2691 164.5613,-194.2501\"/>\n",
       "</g>\n",
       "<!-- 6&#45; -->\n",
       "<g id=\"node10\" class=\"node\">\n",
       "<title>6&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"112.4308\" cy=\"-638.5909\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"112.4308\" y=\"-634.8909\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">6&#45;</text>\n",
       "</g>\n",
       "<!-- 4+ -->\n",
       "<g id=\"node11\" class=\"node\">\n",
       "<title>4+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"44.7026\" cy=\"-708.8622\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"44.7026\" y=\"-705.1622\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">4+</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;4+ -->\n",
       "<g id=\"edge38\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M97.7348,-653.8388C88.5933,-663.3235 76.6732,-675.6912 66.4501,-686.2982\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"63.7895,-684.0151 59.37,-693.6442 68.8296,-688.8728 63.7895,-684.0151\"/>\n",
       "</g>\n",
       "<!-- 7+ -->\n",
       "<g id=\"node12\" class=\"node\">\n",
       "<title>7+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"35.2965\" cy=\"-670.391\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"35.2965\" y=\"-666.691\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">7+</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;7+ -->\n",
       "<g id=\"edge39\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M89.288,-648.132C82.5761,-650.8991 75.1181,-653.9738 67.9405,-656.9329\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"66.3341,-653.8093 58.423,-660.8567 69.0022,-660.2809 66.3341,-653.8093\"/>\n",
       "</g>\n",
       "<!-- 11+ -->\n",
       "<g id=\"node13\" class=\"node\">\n",
       "<title>11+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"128.2184\" cy=\"-694.625\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"128.2184\" y=\"-690.925\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">11+</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;11+ -->\n",
       "<g id=\"edge40\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M117.4261,-656.3205C118.3763,-659.6931 119.3916,-663.2967 120.4052,-666.894\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"117.1206,-668.1424 123.2014,-676.8185 123.8583,-666.2441 117.1206,-668.1424\"/>\n",
       "</g>\n",
       "<!-- 23&#45; -->\n",
       "<g id=\"node14\" class=\"node\">\n",
       "<title>23&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"109.4965\" cy=\"-692.3052\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"109.4965\" y=\"-688.6052\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">23&#45;</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;23&#45; -->\n",
       "<g id=\"edge41\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M111.4374,-656.7761C111.3083,-659.1387 111.1738,-661.6015 111.0384,-664.0799\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"107.5397,-663.9627 110.4889,-674.1387 114.5292,-664.3445 107.5397,-663.9627\"/>\n",
       "</g>\n",
       "<!-- 33&#45; -->\n",
       "<g id=\"node15\" class=\"node\">\n",
       "<title>33&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"91.0257\" cy=\"-711.4249\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"91.0257\" y=\"-707.7249\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">33&#45;</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;33&#45; -->\n",
       "<g id=\"edge42\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M107.1396,-656.5948C104.729,-664.7975 101.8213,-674.6914 99.1432,-683.8038\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"95.7177,-683.047 96.256,-693.6281 102.4337,-685.0208 95.7177,-683.047\"/>\n",
       "</g>\n",
       "<!-- 36+ -->\n",
       "<g id=\"node16\" class=\"node\">\n",
       "<title>36+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"30.5473\" cy=\"-650.6867\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"30.5473\" y=\"-646.9867\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">36+</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;36+ -->\n",
       "<g id=\"edge43\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;36+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M85.6191,-642.5515C80.6736,-643.2821 75.4145,-644.0589 70.1839,-644.8316\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"69.6314,-641.3752 60.2502,-646.299 70.6544,-648.3 69.6314,-641.3752\"/>\n",
       "</g>\n",
       "<!-- 40+ -->\n",
       "<g id=\"node17\" class=\"node\">\n",
       "<title>40+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"64.6927\" cy=\"-667.7363\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"64.6927\" y=\"-664.0363\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">40+</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;40+ -->\n",
       "<g id=\"edge44\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;40+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M92.4622,-650.7823C92.328,-650.8642 92.1937,-650.9462 92.0593,-651.0283\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"92.6771,-646.5503 85.9659,-654.7485 96.3247,-652.5248 92.6771,-646.5503\"/>\n",
       "</g>\n",
       "<!-- 44&#45; -->\n",
       "<g id=\"node18\" class=\"node\">\n",
       "<title>44&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"74.3859\" cy=\"-699.343\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"74.3859\" y=\"-695.643\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">44&#45;</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;44&#45; -->\n",
       "<g id=\"edge45\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M101.8332,-655.5138C98.2878,-661.1752 94.2532,-667.6179 90.3891,-673.7882\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"87.2679,-672.178 84.9267,-682.5109 93.2006,-675.8932 87.2679,-672.178\"/>\n",
       "</g>\n",
       "<!-- 46&#45; -->\n",
       "<g id=\"node19\" class=\"node\">\n",
       "<title>46&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"57.2919\" cy=\"-624.1622\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"57.2919\" y=\"-620.4622\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">46&#45;</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;46&#45; -->\n",
       "<g id=\"edge46\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;46&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M87.1206,-631.9678C87.0286,-631.9437 86.9366,-631.9196 86.8445,-631.8955\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"93.2555,-629.9555 82.6952,-630.8097 91.4833,-636.7275 93.2555,-629.9555\"/>\n",
       "</g>\n",
       "<!-- 15&#45; -->\n",
       "<g id=\"node20\" class=\"node\">\n",
       "<title>15&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"61.8986\" cy=\"-780.0979\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"61.8986\" y=\"-776.3979\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">15&#45;</text>\n",
       "</g>\n",
       "<!-- 4+&#45;&gt;15&#45; -->\n",
       "<g id=\"edge47\" class=\"edge\">\n",
       "<title>4+&#45;&gt;15&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M49.0419,-726.838C50.881,-734.4567 53.0679,-743.5161 55.1118,-751.9829\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"51.752,-752.9806 57.5009,-761.8801 58.5566,-751.338 51.752,-752.9806\"/>\n",
       "</g>\n",
       "<!-- 27&#45; -->\n",
       "<g id=\"node21\" class=\"node\">\n",
       "<title>27&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"105.4132\" cy=\"-773.3651\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"105.4132\" y=\"-769.6651\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">27&#45;</text>\n",
       "</g>\n",
       "<!-- 4+&#45;&gt;27&#45; -->\n",
       "<g id=\"edge48\" class=\"edge\">\n",
       "<title>4+&#45;&gt;27&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M59.0902,-724.1485C66.4669,-731.986 75.6022,-741.692 83.8056,-750.4078\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"81.3047,-752.8574 90.7072,-757.7405 86.4021,-748.0597 81.3047,-752.8574\"/>\n",
       "</g>\n",
       "<!-- 7+&#45;&gt;4+ -->\n",
       "<g id=\"edge49\" class=\"edge\">\n",
       "<title>7+&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M39.6691,-688.2751C39.6931,-688.3732 39.7171,-688.4714 39.7411,-688.5696\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"34.4705,-681.751 40.2458,-690.6335 41.2702,-680.0883 34.4705,-681.751\"/>\n",
       "</g>\n",
       "<!-- 7+&#45;&gt;11+ -->\n",
       "<g id=\"edge50\" class=\"edge\">\n",
       "<title>7+&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M60.6878,-677.0131C69.8765,-679.4095 80.4602,-682.1697 90.4821,-684.7834\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"89.6846,-688.1924 100.2442,-687.3294 91.4512,-681.419 89.6846,-688.1924\"/>\n",
       "</g>\n",
       "<!-- 7+&#45;&gt;23&#45; -->\n",
       "<g id=\"edge51\" class=\"edge\">\n",
       "<title>7+&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M60.004,-677.6881C64.7099,-679.0779 69.7163,-680.5565 74.6685,-682.0191\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"74.062,-685.4894 84.6439,-684.9652 76.0448,-678.776 74.062,-685.4894\"/>\n",
       "</g>\n",
       "<!-- 7+&#45;&gt;33&#45; -->\n",
       "<g id=\"edge52\" class=\"edge\">\n",
       "<title>7+&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M53.5443,-683.827C56.9727,-686.3514 60.6224,-689.0387 64.2476,-691.708\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"62.4182,-694.7074 72.5461,-697.8182 66.5687,-689.0706 62.4182,-694.7074\"/>\n",
       "</g>\n",
       "<!-- 7+&#45;&gt;44&#45; -->\n",
       "<g id=\"edge53\" class=\"edge\">\n",
       "<title>7+&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M53.468,-683.8499C53.5677,-683.9237 53.6674,-683.9976 53.7672,-684.0715\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"45.7451,-682.4853 55.8643,-685.6248 49.9115,-676.8602 45.7451,-682.4853\"/>\n",
       "</g>\n",
       "<!-- 11+&#45;&gt;4+ -->\n",
       "<g id=\"edge54\" class=\"edge\">\n",
       "<title>11+&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M98.5387,-699.6846C92.9126,-700.6437 86.9664,-701.6574 81.1592,-702.6474\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"80.2252,-699.256 70.9556,-704.3868 81.4016,-706.1565 80.2252,-699.256\"/>\n",
       "</g>\n",
       "<!-- 11+&#45;&gt;33&#45; -->\n",
       "<g id=\"edge55\" class=\"edge\">\n",
       "<title>11+&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M103.6174,-705.7373C103.5634,-705.7617 103.5094,-705.786 103.4555,-705.8104\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"110.9661,-698.5736 103.2941,-705.8833 113.85,-704.9533 110.9661,-698.5736\"/>\n",
       "</g>\n",
       "<!-- 11+&#45;&gt;44&#45; -->\n",
       "<g id=\"edge56\" class=\"edge\">\n",
       "<title>11+&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M97.841,-697.2873C97.7933,-697.2915 97.7456,-697.2957 97.698,-697.2999\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"107.2091,-692.9464 97.555,-697.3124 107.8246,-699.9196 107.2091,-692.9464\"/>\n",
       "</g>\n",
       "<!-- 11+&#45;&gt;27&#45; -->\n",
       "<g id=\"edge57\" class=\"edge\">\n",
       "<title>11+&#45;&gt;27&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M123.0435,-712.4924C120.1861,-722.3584 116.5759,-734.8233 113.3677,-745.9003\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"109.9877,-744.9895 110.5676,-755.5685 116.7114,-746.9369 109.9877,-744.9895\"/>\n",
       "</g>\n",
       "<!-- 23&#45;&#45;&gt;4+ -->\n",
       "<g id=\"edge58\" class=\"edge\">\n",
       "<title>23&#45;&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M84.26,-698.754C82.7942,-699.1285 81.3079,-699.5083 79.8138,-699.8901\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"78.799,-696.5369 69.9769,-702.4038 80.5321,-703.319 78.799,-696.5369\"/>\n",
       "</g>\n",
       "<!-- 23&#45;&#45;&gt;11+ -->\n",
       "<g id=\"edge59\" class=\"edge\">\n",
       "<title>23&#45;&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M128.1647,-694.6184C128.1735,-694.6195 128.1813,-694.6205 128.188,-694.6213\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"117.8318,-696.8157 128.2048,-694.6234 118.7287,-689.8686 117.8318,-696.8157\"/>\n",
       "</g>\n",
       "<!-- 23&#45;&#45;&gt;33&#45; -->\n",
       "<g id=\"edge60\" class=\"edge\">\n",
       "<title>23&#45;&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M94.587,-707.7385C94.5214,-707.8064 94.4564,-707.8737 94.392,-707.9403\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"98.6324,-698.5129 94.2009,-708.1381 103.6676,-703.3772 98.6324,-698.5129\"/>\n",
       "</g>\n",
       "<!-- 23&#45;&#45;&gt;44&#45; -->\n",
       "<g id=\"edge61\" class=\"edge\">\n",
       "<title>23&#45;&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M83.6108,-697.4939C83.5286,-697.5104 83.4467,-697.5268 83.3651,-697.5431\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"92.2374,-692.1916 83.1213,-697.592 93.6154,-699.0552 92.2374,-692.1916\"/>\n",
       "</g>\n",
       "<!-- 23&#45;&#45;&gt;27&#45; -->\n",
       "<g id=\"edge62\" class=\"edge\">\n",
       "<title>23&#45;&#45;&gt;27&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M108.5699,-710.6989C108.0547,-720.9272 107.4028,-733.8687 106.8253,-745.3318\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"103.3296,-745.1599 106.322,-755.3234 110.3208,-745.5121 103.3296,-745.1599\"/>\n",
       "</g>\n",
       "<!-- 33&#45;&#45;&gt;4+ -->\n",
       "<g id=\"edge63\" class=\"edge\">\n",
       "<title>33&#45;&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M64.0794,-709.9342C63.9998,-709.9298 63.9202,-709.9254 63.8407,-709.921\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"73.7819,-706.9695 63.6024,-709.9078 73.3925,-713.9588 73.7819,-706.9695\"/>\n",
       "</g>\n",
       "<!-- 33&#45;&#45;&gt;15&#45; -->\n",
       "<g id=\"edge64\" class=\"edge\">\n",
       "<title>33&#45;&#45;&gt;15&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M83.6757,-728.754C80.5263,-736.1793 76.7748,-745.0242 73.2803,-753.2632\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"70.0302,-751.9627 69.3476,-762.5355 76.4745,-754.696 70.0302,-751.9627\"/>\n",
       "</g>\n",
       "<!-- 33&#45;&#45;&gt;27&#45; -->\n",
       "<g id=\"edge65\" class=\"edge\">\n",
       "<title>33&#45;&#45;&gt;27&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M95.1871,-729.3406C96.3402,-734.3047 97.6205,-739.8165 98.874,-745.2132\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"95.5393,-746.3264 101.2112,-755.2751 102.3578,-744.7425 95.5393,-746.3264\"/>\n",
       "</g>\n",
       "<!-- 36+&#45;&gt;4+ -->\n",
       "<g id=\"edge66\" class=\"edge\">\n",
       "<title>36+&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M34.9485,-668.7749C35.8895,-672.642 36.9044,-676.8132 37.9116,-680.9525\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"34.5877,-682.096 40.3527,-690.985 41.3892,-680.441 34.5877,-682.096\"/>\n",
       "</g>\n",
       "<!-- 36+&#45;&gt;7+ -->\n",
       "<g id=\"edge67\" class=\"edge\">\n",
       "<title>36+&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M34.8582,-668.5726C34.8921,-668.7133 34.9244,-668.8472 34.9549,-668.9739\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"29.4326,-661.0027 35.1791,-669.9039 36.2377,-659.3619 29.4326,-661.0027\"/>\n",
       "</g>\n",
       "<!-- 36+&#45;&gt;11+ -->\n",
       "<g id=\"edge68\" class=\"edge\">\n",
       "<title>36+&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M55.1938,-661.7742C67.0826,-667.1225 81.5301,-673.6219 94.4265,-679.4234\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"93.3624,-682.7826 103.9181,-683.6933 96.2343,-676.3988 93.3624,-682.7826\"/>\n",
       "</g>\n",
       "<!-- 36+&#45;&gt;23&#45; -->\n",
       "<g id=\"edge69\" class=\"edge\">\n",
       "<title>36+&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M53.3827,-662.7245C61.4092,-666.9557 70.5591,-671.7791 79.1079,-676.2857\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"77.5883,-679.4411 88.0666,-681.0083 80.8527,-673.2488 77.5883,-679.4411\"/>\n",
       "</g>\n",
       "<!-- 36+&#45;&gt;33&#45; -->\n",
       "<g id=\"edge70\" class=\"edge\">\n",
       "<title>36+&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M46.122,-666.3283C52.9467,-673.1824 61.0864,-681.357 68.5494,-688.8521\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"66.177,-691.4299 75.7131,-696.0466 71.1374,-686.4908 66.177,-691.4299\"/>\n",
       "</g>\n",
       "<!-- 36+&#45;&gt;44&#45; -->\n",
       "<g id=\"edge71\" class=\"edge\">\n",
       "<title>36+&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M44.9017,-666.6186C47.7109,-669.7365 50.7091,-673.0642 53.6776,-676.359\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"51.1533,-678.7861 60.4473,-683.8726 56.3539,-674.1005 51.1533,-678.7861\"/>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;4+ -->\n",
       "<g id=\"edge72\" class=\"edge\">\n",
       "<title>40+&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M56.0991,-685.416C56.0356,-685.5467 55.9721,-685.6774 55.9084,-685.8084\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"54.2594,-681.195 53.0355,-691.7189 60.555,-684.2552 54.2594,-681.195\"/>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;7+ -->\n",
       "<g id=\"edge73\" class=\"edge\">\n",
       "<title>40+&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M35.3808,-670.3834C35.3669,-670.3846 35.3547,-670.3857 35.3442,-670.3867\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"44.9506,-665.9695 35.3178,-670.3891 45.6042,-672.9413 44.9506,-665.9695\"/>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;11+ -->\n",
       "<g id=\"edge74\" class=\"edge\">\n",
       "<title>40+&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M89.7997,-678.3634C91.187,-678.9506 92.5919,-679.5453 94.0034,-680.1427\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"92.7204,-683.4002 103.2937,-684.0751 95.449,-676.9539 92.7204,-683.4002\"/>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;23&#45; -->\n",
       "<g id=\"edge75\" class=\"edge\">\n",
       "<title>40+&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M87.0946,-680.0207C87.204,-680.0807 87.3134,-680.1407 87.4228,-680.2007\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"77.9552,-679.0004 88.4066,-680.7401 81.3213,-672.8626 77.9552,-679.0004\"/>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;33&#45; -->\n",
       "<g id=\"edge76\" class=\"edge\">\n",
       "<title>40+&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M74.9491,-684.7525C75.1946,-685.1598 75.4415,-685.5695 75.6895,-685.9809\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"72.7672,-687.9126 80.927,-694.6704 78.7624,-684.299 72.7672,-687.9126\"/>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;36+ -->\n",
       "<g id=\"edge77\" class=\"edge\">\n",
       "<title>40+&#45;&gt;36+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M41.3511,-656.0813C41.3042,-656.0579 41.2574,-656.0345 41.2107,-656.0111\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"51.5828,-657.2805 41.0707,-655.9412 48.4532,-663.5436 51.5828,-657.2805\"/>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;44&#45; -->\n",
       "<g id=\"edge78\" class=\"edge\">\n",
       "<title>40+&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M70.2189,-685.7554C70.2359,-685.8109 70.2529,-685.8663 70.2699,-685.9217\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"64.0384,-677.5546 70.3208,-686.0877 70.7309,-675.4993 64.0384,-677.5546\"/>\n",
       "</g>\n",
       "<!-- 44&#45;&#45;&gt;4+ -->\n",
       "<g id=\"edge79\" class=\"edge\">\n",
       "<title>44&#45;&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M49.8731,-707.2041C49.825,-707.2195 49.7772,-707.2349 49.7296,-707.2501\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"58.0398,-700.9043 49.5876,-707.2957 60.1807,-707.5702 58.0398,-700.9043\"/>\n",
       "</g>\n",
       "<!-- 44&#45;&#45;&gt;33&#45; -->\n",
       "<g id=\"edge80\" class=\"edge\">\n",
       "<title>44&#45;&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M90.9779,-711.3903C90.9858,-711.396 90.9927,-711.401 90.9987,-711.4053\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"80.8472,-708.3543 91.0136,-711.4162 84.9756,-702.6827 80.8472,-708.3543\"/>\n",
       "</g>\n",
       "<!-- 44&#45;&#45;&gt;15&#45; -->\n",
       "<g id=\"edge81\" class=\"edge\">\n",
       "<title>44&#45;&#45;&gt;15&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M71.6146,-717.2651C70.0412,-727.4399 68.0365,-740.4041 66.2572,-751.9108\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"62.7747,-751.5292 64.7054,-761.9466 69.6925,-752.5989 62.7747,-751.5292\"/>\n",
       "</g>\n",
       "<!-- 44&#45;&#45;&gt;27&#45; -->\n",
       "<g id=\"edge82\" class=\"edge\">\n",
       "<title>44&#45;&#45;&gt;27&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M81.7389,-716.8852C85.4484,-725.735 90.0282,-736.6609 94.1681,-746.5376\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"91.0192,-748.0793 98.1129,-755.9488 97.475,-745.3732 91.0192,-748.0793\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;4+ -->\n",
       "<g id=\"edge83\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M54.622,-642.1249C52.9529,-653.3545 50.7681,-668.0544 48.8738,-680.799\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"45.377,-680.5195 47.3687,-690.9254 52.3009,-681.5487 45.377,-680.5195\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;7+ -->\n",
       "<g id=\"edge84\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M49.1016,-641.3761C48.7062,-642.2072 48.3056,-643.0492 47.902,-643.8974\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"44.7029,-642.4748 43.567,-653.0086 51.0239,-645.4823 44.7029,-642.4748\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;11+ -->\n",
       "<g id=\"edge85\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M72.6819,-639.4516C82.1239,-648.8319 94.3966,-661.0244 105.003,-671.5615\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"102.8063,-674.3127 112.3673,-678.8776 107.7398,-669.3468 102.8063,-674.3127\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;23&#45; -->\n",
       "<g id=\"edge86\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M69.6637,-640.3112C76.0351,-648.6278 83.9323,-658.9361 91.0106,-668.1754\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"88.3536,-670.4625 97.2135,-676.2722 93.9104,-666.2054 88.3536,-670.4625\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;33&#45; -->\n",
       "<g id=\"edge87\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M64.1184,-641.8211C68.828,-654.0039 75.1795,-670.4341 80.529,-684.2721\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"77.3389,-685.727 84.2093,-693.7923 83.8681,-683.2029 77.3389,-685.727\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;36+ -->\n",
       "<g id=\"edge88\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;36+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M42.0446,-639.284C41.9977,-639.3305 41.9508,-639.377 41.9039,-639.4235\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"46.4,-630.0339 41.7635,-639.5628 51.3303,-635.0051 46.4,-630.0339\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;40+ -->\n",
       "<g id=\"edge89\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;40+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M60.3448,-642.137C60.3717,-642.2953 60.3986,-642.4538 60.4256,-642.6125\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"56.5216,-640.5301 61.6468,-649.8028 63.4228,-639.3578 56.5216,-640.5301\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;44&#45; -->\n",
       "<g id=\"edge90\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M61.3429,-641.979C63.3507,-650.8092 65.8212,-661.6745 68.07,-671.5653\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"64.6746,-672.4184 70.3047,-681.3935 71.5004,-670.8664 64.6746,-672.4184\"/>\n",
       "</g>\n",
       "<!-- 1&#45; -->\n",
       "<g id=\"node35\" class=\"node\">\n",
       "<title>1&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"105.738\" cy=\"-849.2775\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"105.738\" y=\"-845.5775\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">1&#45;</text>\n",
       "</g>\n",
       "<!-- 15&#45;&#45;&gt;1&#45; -->\n",
       "<g id=\"edge91\" class=\"edge\">\n",
       "<title>15&#45;&#45;&gt;1&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M72.5109,-796.8443C77.6804,-805.0019 84.0053,-814.9828 89.7443,-824.039\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"86.9142,-826.1119 95.2234,-832.6853 92.827,-822.365 86.9142,-826.1119\"/>\n",
       "</g>\n",
       "<!-- 12&#45; -->\n",
       "<g id=\"node36\" class=\"node\">\n",
       "<title>12&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"135.9106\" cy=\"-833.9287\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"135.9106\" y=\"-830.2287\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">12&#45;</text>\n",
       "</g>\n",
       "<!-- 15&#45;&#45;&gt;12&#45; -->\n",
       "<g id=\"edge92\" class=\"edge\">\n",
       "<title>15&#45;&#45;&gt;12&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M80.1937,-793.4044C89.0005,-799.8098 99.726,-807.6107 109.4062,-814.6514\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"107.4236,-817.5372 117.5695,-820.5887 111.541,-811.8762 107.4236,-817.5372\"/>\n",
       "</g>\n",
       "<!-- 16&#45; -->\n",
       "<g id=\"node37\" class=\"node\">\n",
       "<title>16&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"38.3706\" cy=\"-834.1778\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"38.3706\" y=\"-830.4778\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">16&#45;</text>\n",
       "</g>\n",
       "<!-- 15&#45;&#45;&gt;16&#45; -->\n",
       "<g id=\"edge93\" class=\"edge\">\n",
       "<title>15&#45;&#45;&gt;16&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M54.3247,-797.5068C52.9394,-800.691 51.4648,-804.0803 49.9933,-807.4627\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"46.7104,-806.2354 45.9303,-816.8015 53.1292,-809.0281 46.7104,-806.2354\"/>\n",
       "</g>\n",
       "<!-- 18&#45; -->\n",
       "<g id=\"node38\" class=\"node\">\n",
       "<title>18&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"70.8193\" cy=\"-849.3081\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"70.8193\" y=\"-845.6081\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">18&#45;</text>\n",
       "</g>\n",
       "<!-- 15&#45;&#45;&gt;18&#45; -->\n",
       "<g id=\"edge94\" class=\"edge\">\n",
       "<title>15&#45;&#45;&gt;18&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M64.2424,-798.282C65.1368,-805.2208 66.1789,-813.3061 67.1664,-820.9677\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"63.7104,-821.5345 68.4602,-831.005 70.653,-820.6396 63.7104,-821.5345\"/>\n",
       "</g>\n",
       "<!-- 27&#45;&#45;&gt;15&#45; -->\n",
       "<g id=\"edge95\" class=\"edge\">\n",
       "<title>27&#45;&#45;&gt;15&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M79.0967,-777.4369C79.0251,-777.448 78.9536,-777.4591 78.8822,-777.4701\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"88.0139,-772.5114 78.668,-777.5032 89.087,-779.4291 88.0139,-772.5114\"/>\n",
       "</g>\n",
       "<!-- 27&#45;&#45;&gt;1&#45; -->\n",
       "<g id=\"edge96\" class=\"edge\">\n",
       "<title>27&#45;&#45;&gt;1&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M105.4918,-791.7414C105.5293,-800.5064 105.575,-811.1897 105.6168,-820.9603\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"102.1172,-821.0855 105.6601,-831.0704 109.1172,-821.0555 102.1172,-821.0855\"/>\n",
       "</g>\n",
       "<!-- 27&#45;&#45;&gt;12&#45; -->\n",
       "<g id=\"edge97\" class=\"edge\">\n",
       "<title>27&#45;&#45;&gt;12&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M114.0709,-790.5582C116.6882,-795.7558 119.6263,-801.5904 122.4784,-807.2543\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"119.5016,-809.125 127.1253,-816.4823 125.7537,-805.9766 119.5016,-809.125\"/>\n",
       "</g>\n",
       "<!-- 27&#45;&#45;&gt;16&#45; -->\n",
       "<g id=\"edge98\" class=\"edge\">\n",
       "<title>27&#45;&#45;&gt;16&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M89.184,-788.0862C81.0314,-795.4812 70.9996,-804.5808 62.0093,-812.7357\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"59.5056,-810.2813 54.4503,-819.5923 64.2086,-815.4661 59.5056,-810.2813\"/>\n",
       "</g>\n",
       "<!-- 27&#45;&#45;&gt;18&#45; -->\n",
       "<g id=\"edge99\" class=\"edge\">\n",
       "<title>27&#45;&#45;&gt;18&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M97.5633,-790.5977C93.2592,-800.0463 87.8294,-811.9662 82.9887,-822.593\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"79.7182,-821.3295 78.7579,-831.8807 86.0884,-824.2313 79.7182,-821.3295\"/>\n",
       "</g>\n",
       "<!-- 35&#45; -->\n",
       "<g id=\"node42\" class=\"node\">\n",
       "<title>35&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"180.2141\" cy=\"-282.8097\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"180.2141\" y=\"-279.1097\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">35&#45;</text>\n",
       "</g>\n",
       "<!-- 21&#45;&#45;&gt;35&#45; -->\n",
       "<g id=\"edge100\" class=\"edge\">\n",
       "<title>21&#45;&#45;&gt;35&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M189.5943,-226.77C188.1909,-235.1541 186.4859,-245.3403 184.9164,-254.7168\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"181.4243,-254.3793 183.2253,-264.8199 188.3283,-255.535 181.4243,-254.3793\"/>\n",
       "</g>\n",
       "<!-- 21&#45;&#45;&gt;45&#45; -->\n",
       "<g id=\"edge101\" class=\"edge\">\n",
       "<title>21&#45;&#45;&gt;45&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M168.5557,-217.5271C168.4981,-217.5478 168.4406,-217.5685 168.3832,-217.5892\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"176.4327,-210.9663 168.211,-217.6512 178.807,-217.5524 176.4327,-210.9663\"/>\n",
       "</g>\n",
       "<!-- 47&#45; -->\n",
       "<g id=\"node44\" class=\"node\">\n",
       "<title>47&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"215.6594\" cy=\"-292.5208\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"215.6594\" y=\"-288.8208\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">47&#45;</text>\n",
       "</g>\n",
       "<!-- 21&#45;&#45;&gt;47&#45; -->\n",
       "<g id=\"edge102\" class=\"edge\">\n",
       "<title>21&#45;&#45;&gt;47&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M197.4826,-226.6115C200.5411,-237.7018 204.5448,-252.2193 208.016,-264.8057\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"204.7413,-266.097 210.7741,-274.8066 211.4894,-264.2359 204.7413,-266.097\"/>\n",
       "</g>\n",
       "<!-- 39+&#45;&gt;21&#45; -->\n",
       "<g id=\"edge103\" class=\"edge\">\n",
       "<title>39+&#45;&gt;21&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M196.2576,-210.249C196.1877,-210.2228 196.1186,-210.1968 196.0503,-210.1712\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"206.4413,-210.3374 195.8479,-210.0952 203.9781,-216.8907 206.4413,-210.3374\"/>\n",
       "</g>\n",
       "<!-- 39+&#45;&gt;35&#45; -->\n",
       "<g id=\"edge104\" class=\"edge\">\n",
       "<title>39+&#45;&gt;35&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M211.1675,-236.9083C206.9017,-243.2342 201.9512,-250.5754 197.2772,-257.5066\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"194.2662,-255.7116 191.577,-265.9595 200.0699,-259.6253 194.2662,-255.7116\"/>\n",
       "</g>\n",
       "<!-- 39+&#45;&gt;45&#45; -->\n",
       "<g id=\"edge105\" class=\"edge\">\n",
       "<title>39+&#45;&gt;45&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M191.8987,-221.1526C191.7983,-221.156 191.698,-221.1595 191.5976,-221.1629\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"192.1443,-217.642 182.27,-221.4824 192.384,-224.6379 192.1443,-217.642\"/>\n",
       "</g>\n",
       "<!-- 39+&#45;&gt;47&#45; -->\n",
       "<g id=\"edge106\" class=\"edge\">\n",
       "<title>39+&#45;&gt;47&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M220.7731,-238.3781C220.0304,-246.2422 219.145,-255.6164 218.3214,-264.3367\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"214.817,-264.219 217.3611,-274.5038 221.786,-264.8773 214.817,-264.219\"/>\n",
       "</g>\n",
       "<!-- 50&#45;&#45;&gt;21&#45; -->\n",
       "<g id=\"edge107\" class=\"edge\">\n",
       "<title>50&#45;&#45;&gt;21&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M225.2572,-215.5527C225.1195,-215.5245 224.9817,-215.4963 224.8438,-215.4681\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"229.1173,-212.7698 218.6188,-214.195 227.7147,-219.6279 229.1173,-212.7698\"/>\n",
       "</g>\n",
       "<!-- 50&#45;&#45;&gt;39+ -->\n",
       "<g id=\"edge108\" class=\"edge\">\n",
       "<title>50&#45;&#45;&gt;39+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M224.0359,-220.1437C223.793,-220.1375 223.5755,-220.1319 223.3859,-220.1271\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"232.99,-216.8733 222.9031,-220.1147 232.8098,-223.871 232.99,-216.8733\"/>\n",
       "</g>\n",
       "<!-- 50&#45;&#45;&gt;35&#45; -->\n",
       "<g id=\"edge109\" class=\"edge\">\n",
       "<title>50&#45;&#45;&gt;35&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M234.6465,-235.2088C225.7415,-242.9962 214.5638,-252.771 204.658,-261.4336\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"202.2777,-258.8656 197.0541,-268.0832 206.8858,-264.135 202.2777,-258.8656\"/>\n",
       "</g>\n",
       "<!-- 50&#45;&#45;&gt;45&#45; -->\n",
       "<g id=\"edge110\" class=\"edge\">\n",
       "<title>50&#45;&#45;&gt;45&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M224.0565,-221.2797C214.2295,-221.4416 202.9411,-221.6275 192.3762,-221.8015\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"192.0743,-218.3059 182.1334,-221.9701 192.1897,-225.3049 192.0743,-218.3059\"/>\n",
       "</g>\n",
       "<!-- 2&#45; -->\n",
       "<g id=\"node25\" class=\"node\">\n",
       "<title>2&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"188.141\" cy=\"-505.7871\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"188.141\" y=\"-502.0871\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">2&#45;</text>\n",
       "</g>\n",
       "<!-- 10+ -->\n",
       "<g id=\"node26\" class=\"node\">\n",
       "<title>10+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"143.3977\" cy=\"-490.9509\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"143.3977\" y=\"-487.2509\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">10+</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;10+ -->\n",
       "<g id=\"edge111\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;10+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M163.936,-497.7611C163.8537,-497.7338 163.7713,-497.7065 163.689,-497.6792\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"174.0368,-497.4251 163.4423,-497.5973 171.8318,-504.0695 174.0368,-497.4251\"/>\n",
       "</g>\n",
       "<!-- 14&#45; -->\n",
       "<g id=\"node27\" class=\"node\">\n",
       "<title>14&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"138.6175\" cy=\"-570.7682\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"138.6175\" y=\"-567.0682\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">14&#45;</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;14&#45; -->\n",
       "<g id=\"edge112\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M175.8993,-521.8498C170.287,-529.2138 163.5103,-538.1058 157.2822,-546.2777\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"154.3403,-544.3638 151.0625,-554.4388 159.9077,-548.6069 154.3403,-544.3638\"/>\n",
       "</g>\n",
       "<!-- 17+ -->\n",
       "<g id=\"node28\" class=\"node\">\n",
       "<title>17+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"116.6805\" cy=\"-487.2726\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"116.6805\" y=\"-483.5726\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">17+</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;17+ -->\n",
       "<g id=\"edge113\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;17+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M162.7455,-499.2075C160.1279,-498.5293 157.4293,-497.8301 154.7129,-497.1263\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"155.469,-493.7067 144.9108,-494.5867 153.7133,-500.483 155.469,-493.7067\"/>\n",
       "</g>\n",
       "<!-- 20+ -->\n",
       "<g id=\"node29\" class=\"node\">\n",
       "<title>20+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"95.0216\" cy=\"-490.4267\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"95.0216\" y=\"-486.7267\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">20+</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;20+ -->\n",
       "<g id=\"edge114\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;20+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M161.7058,-501.4265C153.2673,-500.0345 143.7367,-498.4624 134.5763,-496.9514\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"134.9056,-493.4585 124.4692,-495.2842 133.7662,-500.3651 134.9056,-493.4585\"/>\n",
       "</g>\n",
       "<!-- 22+ -->\n",
       "<g id=\"node30\" class=\"node\">\n",
       "<title>22+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"163.9373\" cy=\"-501.6957\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"163.9373\" y=\"-497.9957\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">22+</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;22+ -->\n",
       "<g id=\"edge115\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;22+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M164.0067,-501.7075C163.9953,-501.7055 163.9852,-501.7038 163.9766,-501.7024\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"174.4121,-499.9518 163.9548,-501.6987 173.2191,-506.8544 174.4121,-499.9518\"/>\n",
       "</g>\n",
       "<!-- 25+ -->\n",
       "<g id=\"node31\" class=\"node\">\n",
       "<title>25+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"163.2876\" cy=\"-570.1394\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"163.2876\" y=\"-566.4394\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">25+</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;25+ -->\n",
       "<g id=\"edge116\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M181.3497,-523.3717C178.9936,-529.4724 176.2945,-536.4611 173.7136,-543.1436\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"170.4085,-541.9867 170.0707,-552.5761 176.9385,-544.5086 170.4085,-541.9867\"/>\n",
       "</g>\n",
       "<!-- 42&#45; -->\n",
       "<g id=\"node32\" class=\"node\">\n",
       "<title>42&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"129.6415\" cy=\"-555.3209\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"129.6415\" y=\"-551.6209\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">42&#45;</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;42&#45; -->\n",
       "<g id=\"edge117\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;42&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M171.2206,-520.1143C166.0513,-524.4913 160.2533,-529.4007 154.6654,-534.1322\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"152.0966,-531.7211 146.7267,-540.8543 156.6201,-537.0633 152.0966,-531.7211\"/>\n",
       "</g>\n",
       "<!-- 49&#45; -->\n",
       "<g id=\"node33\" class=\"node\">\n",
       "<title>49&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"105.0171\" cy=\"-551.3319\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"105.0171\" y=\"-547.6319\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">49&#45;</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;49&#45; -->\n",
       "<g id=\"edge118\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;49&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M167.1654,-517.28C157.4193,-522.62 145.6527,-529.067 134.9917,-534.9084\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"133.0741,-531.968 125.9861,-539.8427 136.4378,-538.107 133.0741,-531.968\"/>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;14&#45; -->\n",
       "<g id=\"edge119\" class=\"edge\">\n",
       "<title>10+&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M142.313,-509.0626C141.7202,-518.9616 140.9728,-531.4415 140.3055,-542.5835\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"136.8021,-542.5367 139.6979,-552.7281 143.7896,-542.9552 136.8021,-542.5367\"/>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;17+ -->\n",
       "<g id=\"edge120\" class=\"edge\">\n",
       "<title>10+&#45;&gt;17+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M116.7572,-487.2832C116.7445,-487.2815 116.7334,-487.2799 116.7239,-487.2786\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"127.0966,-485.2073 116.6999,-487.2753 126.117,-492.1421 127.0966,-485.2073\"/>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;20+ -->\n",
       "<g id=\"edge121\" class=\"edge\">\n",
       "<title>10+&#45;&gt;20+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M112.7604,-490.6189C112.6854,-490.6181 112.6105,-490.6173 112.5357,-490.6165\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"122.3504,-487.227 112.3115,-490.614 122.2714,-494.2266 122.3504,-487.227\"/>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;25+ -->\n",
       "<g id=\"edge122\" class=\"edge\">\n",
       "<title>10+&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M147.911,-508.92C150.4032,-518.8422 153.5519,-531.3781 156.3499,-542.5182\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"152.9614,-543.3953 158.7921,-552.2414 159.7506,-541.69 152.9614,-543.3953\"/>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;42&#45; -->\n",
       "<g id=\"edge123\" class=\"edge\">\n",
       "<title>10+&#45;&gt;42&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M139.5658,-508.8815C138.3436,-514.6011 136.9604,-521.0732 135.6233,-527.3303\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"132.1201,-526.9758 133.4528,-537.4864 138.9655,-528.4387 132.1201,-526.9758\"/>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;49&#45; -->\n",
       "<g id=\"edge124\" class=\"edge\">\n",
       "<title>10+&#45;&gt;49&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M132.502,-508.0921C128.988,-513.6205 125.0144,-519.8718 121.2029,-525.868\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"118.2178,-524.0398 115.8072,-534.3568 124.1254,-527.7949 118.2178,-524.0398\"/>\n",
       "</g>\n",
       "<!-- 13+ -->\n",
       "<g id=\"node34\" class=\"node\">\n",
       "<title>13+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"79.6374\" cy=\"-553.3569\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"79.6374\" y=\"-549.6569\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">13+</text>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;13+ -->\n",
       "<g id=\"edge125\" class=\"edge\">\n",
       "<title>10+&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M127.6367,-506.3771C120.1829,-513.6726 111.1336,-522.5296 102.9103,-530.5783\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"100.3584,-528.1786 95.66,-537.6747 105.2547,-533.1812 100.3584,-528.1786\"/>\n",
       "</g>\n",
       "<!-- 14&#45;&#45;&gt;6&#45; -->\n",
       "<g id=\"edge126\" class=\"edge\">\n",
       "<title>14&#45;&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M131.8738,-588.2342C129.146,-595.299 125.9332,-603.6203 122.9134,-611.4413\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"119.5796,-610.3589 119.2427,-620.9483 126.1097,-612.8802 119.5796,-610.3589\"/>\n",
       "</g>\n",
       "<!-- 14&#45;&#45;&gt;46&#45; -->\n",
       "<g id=\"edge127\" class=\"edge\">\n",
       "<title>14&#45;&#45;&gt;46&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M119.3445,-583.4218C109.1892,-590.0892 96.5457,-598.3903 85.3262,-605.7564\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"83.1469,-603.0003 76.7084,-611.4144 86.9887,-608.8518 83.1469,-603.0003\"/>\n",
       "</g>\n",
       "<!-- 14&#45;&#45;&gt;13+ -->\n",
       "<g id=\"edge128\" class=\"edge\">\n",
       "<title>14&#45;&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M113.6047,-563.3842C113.4712,-563.3448 113.3377,-563.3054 113.204,-563.2659\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"117.7316,-560.9533 107.1498,-561.4787 115.7496,-567.6669 117.7316,-560.9533\"/>\n",
       "</g>\n",
       "<!-- 19&#45; -->\n",
       "<g id=\"node39\" class=\"node\">\n",
       "<title>19&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"103.5278\" cy=\"-621.6915\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"103.5278\" y=\"-617.9915\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">19&#45;</text>\n",
       "</g>\n",
       "<!-- 14&#45;&#45;&gt;19&#45; -->\n",
       "<g id=\"edge129\" class=\"edge\">\n",
       "<title>14&#45;&#45;&gt;19&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M127.3218,-587.1609C125.1931,-590.2502 122.9232,-593.5443 120.6624,-596.8252\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"117.5944,-595.1091 114.8024,-605.3294 123.3585,-599.081 117.5944,-595.1091\"/>\n",
       "</g>\n",
       "<!-- 29&#45; -->\n",
       "<g id=\"node40\" class=\"node\">\n",
       "<title>29&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"81.9386\" cy=\"-621.0432\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"81.9386\" y=\"-617.3432\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">29&#45;</text>\n",
       "</g>\n",
       "<!-- 14&#45;&#45;&gt;29&#45; -->\n",
       "<g id=\"edge130\" class=\"edge\">\n",
       "<title>14&#45;&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M122.2236,-585.3098C117.2153,-589.7523 111.5977,-594.7352 106.1837,-599.5375\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"103.6505,-597.1059 98.492,-606.3601 108.2956,-602.3426 103.6505,-597.1059\"/>\n",
       "</g>\n",
       "<!-- 37&#45; -->\n",
       "<g id=\"node41\" class=\"node\">\n",
       "<title>37&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"134.6564\" cy=\"-631.8859\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"134.6564\" y=\"-628.1859\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">37&#45;</text>\n",
       "</g>\n",
       "<!-- 14&#45;&#45;&gt;37&#45; -->\n",
       "<g id=\"edge131\" class=\"edge\">\n",
       "<title>14&#45;&#45;&gt;37&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M137.4505,-588.7749C137.147,-593.458 136.8126,-598.6172 136.4839,-603.689\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"132.983,-603.5911 135.8288,-613.7966 139.9683,-604.0439 132.983,-603.5911\"/>\n",
       "</g>\n",
       "<!-- 17+&#45;&gt;14&#45; -->\n",
       "<g id=\"edge132\" class=\"edge\">\n",
       "<title>17+&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M121.4405,-505.3899C124.3349,-516.4063 128.0892,-530.6959 131.3495,-543.1049\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"128.0159,-544.1907 133.9422,-552.9731 134.7861,-542.4119 128.0159,-544.1907\"/>\n",
       "</g>\n",
       "<!-- 17+&#45;&gt;20+ -->\n",
       "<g id=\"edge133\" class=\"edge\">\n",
       "<title>17+&#45;&gt;20+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M95.0838,-490.4177C95.0735,-490.4192 95.0645,-490.4205 95.0568,-490.4216\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"104.414,-485.4764 95.0373,-490.4244 105.453,-492.4037 104.414,-485.4764\"/>\n",
       "</g>\n",
       "<!-- 17+&#45;&gt;25+ -->\n",
       "<g id=\"edge134\" class=\"edge\">\n",
       "<title>17+&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M126.3375,-504.4427C132.7742,-515.887 141.3554,-531.1443 148.628,-544.0749\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"145.6901,-545.9911 153.6429,-552.9914 151.7913,-542.5596 145.6901,-545.9911\"/>\n",
       "</g>\n",
       "<!-- 17+&#45;&gt;42&#45; -->\n",
       "<g id=\"edge135\" class=\"edge\">\n",
       "<title>17+&#45;&gt;42&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M120.1538,-505.5083C121.4178,-512.1444 122.8779,-519.8101 124.2679,-527.1081\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"120.8493,-527.8664 126.1586,-537.0349 127.7257,-526.5566 120.8493,-527.8664\"/>\n",
       "</g>\n",
       "<!-- 17+&#45;&gt;49&#45; -->\n",
       "<g id=\"edge136\" class=\"edge\">\n",
       "<title>17+&#45;&gt;49&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M113.3694,-505.4581C112.3512,-511.0505 111.2061,-517.3401 110.0977,-523.4276\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"106.644,-522.8574 108.2961,-533.3227 113.5308,-524.1114 106.644,-522.8574\"/>\n",
       "</g>\n",
       "<!-- 17+&#45;&gt;13+ -->\n",
       "<g id=\"edge137\" class=\"edge\">\n",
       "<title>17+&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M106.9479,-504.6355C103.1497,-511.4114 98.7096,-519.3325 94.5267,-526.7947\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"91.2703,-525.4461 89.4337,-535.8805 97.3764,-528.8689 91.2703,-525.4461\"/>\n",
       "</g>\n",
       "<!-- 20+&#45;&gt;14&#45; -->\n",
       "<g id=\"edge138\" class=\"edge\">\n",
       "<title>20+&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M104.4813,-507.8596C110.2908,-518.5658 117.8438,-532.485 124.3677,-544.5076\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"121.4804,-546.5252 129.3261,-553.6453 127.6329,-543.1866 121.4804,-546.5252\"/>\n",
       "</g>\n",
       "<!-- 20+&#45;&gt;25+ -->\n",
       "<g id=\"edge139\" class=\"edge\">\n",
       "<title>20+&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M108.8363,-506.5578C118.6444,-518.0106 131.9719,-533.5727 142.9864,-546.4342\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"140.3304,-548.7136 149.4935,-554.0324 145.6472,-544.1603 140.3304,-548.7136\"/>\n",
       "</g>\n",
       "<!-- 20+&#45;&gt;42&#45; -->\n",
       "<g id=\"edge140\" class=\"edge\">\n",
       "<title>20+&#45;&gt;42&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M104.2991,-507.8172C107.848,-514.4695 111.9757,-522.2067 115.8565,-529.4812\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"112.7831,-531.1561 120.5781,-538.3317 118.9592,-527.8612 112.7831,-531.1561\"/>\n",
       "</g>\n",
       "<!-- 20+&#45;&gt;49&#45; -->\n",
       "<g id=\"edge141\" class=\"edge\">\n",
       "<title>20+&#45;&gt;49&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M97.9665,-508.3709C98.7324,-513.0377 99.5762,-518.1789 100.4057,-523.2331\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"96.9853,-524.0044 102.0587,-533.3055 103.8929,-522.8707 96.9853,-524.0044\"/>\n",
       "</g>\n",
       "<!-- 20+&#45;&gt;13+ -->\n",
       "<g id=\"edge142\" class=\"edge\">\n",
       "<title>20+&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M90.6543,-508.2916C89.3662,-513.5606 87.9241,-519.4596 86.5185,-525.2092\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"83.044,-524.6836 84.0691,-535.2288 89.8438,-526.346 83.044,-524.6836\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;10+ -->\n",
       "<g id=\"edge143\" class=\"edge\">\n",
       "<title>22+&#45;&gt;10+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M143.4566,-490.9817C143.4469,-490.9766 143.4384,-490.9721 143.431,-490.9683\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"153.9102,-492.5165 143.4126,-490.9587 150.6475,-498.7228 153.9102,-492.5165\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;14&#45; -->\n",
       "<g id=\"edge144\" class=\"edge\">\n",
       "<title>22+&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M157.4168,-519.4836C154.7084,-526.8722 151.5053,-535.6102 148.5178,-543.7602\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"145.1839,-542.686 145.0282,-553.2797 151.7562,-545.0952 145.1839,-542.686\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;17+ -->\n",
       "<g id=\"edge145\" class=\"edge\">\n",
       "<title>22+&#45;&gt;17+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M136.7216,-493.3893C136.6396,-493.3643 136.5576,-493.3393 136.4756,-493.3142\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"146.8173,-492.8135 136.23,-493.2393 144.7719,-499.5088 146.8173,-492.8135\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;20+ -->\n",
       "<g id=\"edge146\" class=\"edge\">\n",
       "<title>22+&#45;&gt;20+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M134.3109,-496.8513C134.2106,-496.8349 134.1102,-496.8184 134.0098,-496.802\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"135.0568,-493.4268 124.623,-495.2671 133.9271,-500.3351 135.0568,-493.4268\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;25+ -->\n",
       "<g id=\"edge147\" class=\"edge\">\n",
       "<title>22+&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M163.7632,-520.0374C163.7006,-526.6353 163.6283,-534.2451 163.5594,-541.5094\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"160.0573,-541.7143 163.4622,-551.7472 167.057,-541.7809 160.0573,-541.7143\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;42&#45; -->\n",
       "<g id=\"edge148\" class=\"edge\">\n",
       "<title>22+&#45;&gt;42&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M153.0859,-518.6631C150.7899,-522.2532 148.319,-526.1167 145.873,-529.9413\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"142.7442,-528.3373 140.3049,-538.6475 148.6414,-532.1088 142.7442,-528.3373\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;49&#45; -->\n",
       "<g id=\"edge149\" class=\"edge\">\n",
       "<title>22+&#45;&gt;49&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M146.2593,-516.5882C141.0667,-520.9626 135.2894,-525.8296 129.7421,-530.5028\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"127.2671,-528.0114 121.8741,-537.131 131.777,-533.3649 127.2671,-528.0114\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;13+ -->\n",
       "<g id=\"edge150\" class=\"edge\">\n",
       "<title>22+&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M142.6649,-514.732C132.6811,-520.8503 120.6066,-528.2499 109.7088,-534.9284\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"107.6005,-532.1154 100.903,-540.3248 111.2582,-538.0838 107.6005,-532.1154\"/>\n",
       "</g>\n",
       "<!-- 25+&#45;&gt;6&#45; -->\n",
       "<g id=\"edge151\" class=\"edge\">\n",
       "<title>25+&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M150.9766,-586.7096C144.9171,-594.8654 137.4892,-604.8631 130.7768,-613.8978\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"127.7828,-612.0589 124.6284,-622.1733 133.4017,-616.2336 127.7828,-612.0589\"/>\n",
       "</g>\n",
       "<!-- 25+&#45;&gt;14&#45; -->\n",
       "<g id=\"edge152\" class=\"edge\">\n",
       "<title>25+&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M138.6883,-570.7664C138.6766,-570.7666 138.6664,-570.7669 138.6575,-570.7671\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"148.5277,-566.9703 138.6354,-570.7677 148.7367,-573.968 148.5277,-566.9703\"/>\n",
       "</g>\n",
       "<!-- 25+&#45;&gt;13+ -->\n",
       "<g id=\"edge153\" class=\"edge\">\n",
       "<title>25+&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M134.0308,-564.2697C129.0353,-563.2675 123.776,-562.2123 118.5765,-561.1692\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"119.2295,-557.7305 108.7364,-559.195 117.8525,-564.5937 119.2295,-557.7305\"/>\n",
       "</g>\n",
       "<!-- 25+&#45;&gt;19&#45; -->\n",
       "<g id=\"edge154\" class=\"edge\">\n",
       "<title>25+&#45;&gt;19&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M146.0026,-585.0504C140.4096,-589.8752 134.096,-595.3217 128.0801,-600.5113\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"125.4426,-598.1642 120.1568,-607.3464 130.015,-603.4646 125.4426,-598.1642\"/>\n",
       "</g>\n",
       "<!-- 25+&#45;&gt;29&#45; -->\n",
       "<g id=\"edge155\" class=\"edge\">\n",
       "<title>25+&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M142.3382,-583.2484C132.5551,-589.3701 120.7633,-596.7488 110.205,-603.3556\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"108.318,-600.4076 101.6974,-608.6792 112.0312,-606.3416 108.318,-600.4076\"/>\n",
       "</g>\n",
       "<!-- 25+&#45;&gt;37&#45; -->\n",
       "<g id=\"edge156\" class=\"edge\">\n",
       "<title>25+&#45;&gt;37&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M155.1596,-587.6683C152.5992,-593.1903 149.7117,-599.4175 146.9293,-605.418\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"143.7371,-603.9823 142.7056,-614.5269 150.0876,-606.927 143.7371,-603.9823\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;6&#45; -->\n",
       "<g id=\"edge157\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M125.9071,-573.3893C123.6517,-584.3011 120.7308,-598.4332 118.1852,-610.7496\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"114.7546,-610.0564 116.158,-620.5578 121.6097,-611.4733 114.7546,-610.0564\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;14&#45; -->\n",
       "<g id=\"edge158\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M138.5167,-570.5947C138.5332,-570.623 138.5477,-570.6479 138.5602,-570.6695\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"130.5328,-563.8366 138.5918,-570.7238 136.5867,-560.3142 130.5328,-563.8366\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;25+ -->\n",
       "<g id=\"edge159\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M152.2706,-565.2873C152.3182,-565.3082 152.3656,-565.3292 152.413,-565.35\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"141.9907,-564.5814 152.555,-565.4126 144.8148,-558.1748 141.9907,-564.5814\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;49&#45; -->\n",
       "<g id=\"edge160\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;49&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M105.0877,-551.3433C105.0761,-551.3414 105.0658,-551.3398 105.057,-551.3384\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"115.4796,-549.5161 105.0349,-551.3348 114.3341,-556.4264 115.4796,-549.5161\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;13+ -->\n",
       "<g id=\"edge161\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M102.5906,-554.2584C102.5446,-554.2566 102.4985,-554.2548 102.4525,-554.253\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"112.4466,-551.1497 102.3146,-554.2476 112.1671,-558.1443 112.4466,-551.1497\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;19&#45; -->\n",
       "<g id=\"edge162\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;19&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M122.7805,-572.759C120.1624,-579.413 117.1117,-587.1667 114.2209,-594.5139\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"110.8381,-593.5523 110.4337,-604.1394 117.3521,-596.1153 110.8381,-593.5523\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;29&#45; -->\n",
       "<g id=\"edge163\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M117.8498,-571.5669C112.4438,-579.0149 105.9162,-588.0083 99.9172,-596.2734\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"96.9676,-594.3788 93.926,-604.5276 102.6326,-598.4906 96.9676,-594.3788\"/>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;37&#45; -->\n",
       "<g id=\"edge164\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;37&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M130.83,-573.4657C131.4233,-582.5242 132.1544,-593.6855 132.818,-603.8171\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"129.3303,-604.1214 133.4765,-613.8713 136.3153,-603.6639 129.3303,-604.1214\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;6&#45; -->\n",
       "<g id=\"edge165\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M106.5532,-569.412C107.5572,-581.2289 108.8892,-596.9065 110.0313,-610.349\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"106.5625,-610.8662 110.8966,-620.534 113.5374,-610.2735 106.5625,-610.8662\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;14&#45; -->\n",
       "<g id=\"edge166\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M125.7228,-563.3092C125.7768,-563.3404 125.8308,-563.3716 125.8847,-563.4028\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"115.636,-561.5163 126.0462,-563.4963 119.1428,-555.4565 115.636,-561.5163\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;25+ -->\n",
       "<g id=\"edge167\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M129.3914,-559.199C129.5317,-559.2443 129.6722,-559.2897 129.8129,-559.335\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"125.5971,-561.6521 136.1888,-561.3929 127.7473,-554.9904 125.5971,-561.6521\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;13+ -->\n",
       "<g id=\"edge168\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M79.7102,-553.3511C79.6982,-553.352 79.6877,-553.3529 79.6786,-553.3536\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"89.3319,-549.031 79.6558,-553.3554 89.9167,-556.0089 89.3319,-549.031\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;19&#45; -->\n",
       "<g id=\"edge169\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;19&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M104.6336,-569.4512C104.4801,-576.6988 104.2998,-585.2211 104.1297,-593.2558\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"100.6277,-593.3172 103.9152,-603.389 107.6261,-593.4654 100.6277,-593.3172\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;29&#45; -->\n",
       "<g id=\"edge170\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M99.1934,-568.923C96.7252,-576.3786 93.7902,-585.2442 91.0471,-593.5299\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"87.6609,-592.6219 87.8407,-603.2153 94.3062,-594.822 87.6609,-592.6219\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;37&#45; -->\n",
       "<g id=\"edge171\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;37&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M111.595,-569.2094C115.4203,-579.6059 120.3199,-592.9219 124.6183,-604.6042\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"121.461,-606.1592 128.1989,-614.3354 128.0304,-603.7419 121.461,-606.1592\"/>\n",
       "</g>\n",
       "<!-- 13+&#45;&gt;6&#45; -->\n",
       "<g id=\"edge172\" class=\"edge\">\n",
       "<title>13+&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M86.4322,-571.0174C90.9172,-582.6743 96.8819,-598.1775 101.9668,-611.3938\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"98.7872,-612.8768 105.6447,-620.953 105.3204,-610.3631 98.7872,-612.8768\"/>\n",
       "</g>\n",
       "<!-- 13+&#45;&gt;46&#45; -->\n",
       "<g id=\"edge173\" class=\"edge\">\n",
       "<title>13+&#45;&gt;46&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M73.9987,-571.2241C71.5454,-578.9977 68.6159,-588.2804 65.9,-596.8859\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"62.5233,-595.9563 62.8514,-606.546 69.1988,-598.063 62.5233,-595.9563\"/>\n",
       "</g>\n",
       "<!-- 13+&#45;&gt;19&#45; -->\n",
       "<g id=\"edge174\" class=\"edge\">\n",
       "<title>13+&#45;&gt;19&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M85.9143,-571.311C88.4028,-578.4289 91.3185,-586.7688 94.0535,-594.5918\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"90.7712,-595.809 97.3754,-604.0936 97.379,-593.4988 90.7712,-595.809\"/>\n",
       "</g>\n",
       "<!-- 13+&#45;&gt;29&#45; -->\n",
       "<g id=\"edge175\" class=\"edge\">\n",
       "<title>13+&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M80.2541,-571.4956C80.4759,-578.0205 80.7318,-585.5461 80.976,-592.73\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"77.4824,-592.9792 81.3202,-602.8545 84.4783,-592.7413 77.4824,-592.9792\"/>\n",
       "</g>\n",
       "<!-- 13+&#45;&gt;37&#45; -->\n",
       "<g id=\"edge176\" class=\"edge\">\n",
       "<title>13+&#45;&gt;37&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M91.3055,-570.0109C98.8696,-580.8071 108.8576,-595.063 117.3398,-607.1697\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"114.5892,-609.3435 123.1938,-615.5252 120.3222,-605.3269 114.5892,-609.3435\"/>\n",
       "</g>\n",
       "<!-- 1&#45;&#45;&gt;12&#45; -->\n",
       "<g id=\"edge177\" class=\"edge\">\n",
       "<title>1&#45;&#45;&gt;12&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M127.345,-838.286C127.4206,-838.2476 127.4959,-838.2093 127.5709,-838.1711\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"120.4693,-845.713 127.7951,-838.0571 117.294,-839.4736 120.4693,-845.713\"/>\n",
       "</g>\n",
       "<!-- 1&#45;&#45;&gt;16&#45; -->\n",
       "<g id=\"edge178\" class=\"edge\">\n",
       "<title>1&#45;&#45;&gt;16&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M79.8847,-843.4828C77.9366,-843.0461 75.9516,-842.6012 73.9576,-842.1543\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"74.5669,-838.7041 64.0435,-839.9321 73.0359,-845.5346 74.5669,-838.7041\"/>\n",
       "</g>\n",
       "<!-- 1&#45;&#45;&gt;18&#45; -->\n",
       "<g id=\"edge179\" class=\"edge\">\n",
       "<title>1&#45;&#45;&gt;18&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M78.5689,-849.3013C78.4984,-849.3013 78.4283,-849.3014 78.3585,-849.3015\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"88.1453,-845.7881 78.15,-849.3016 88.1548,-852.7881 88.1453,-845.7881\"/>\n",
       "</g>\n",
       "<!-- 16&#45;&#45;&gt;12&#45; -->\n",
       "<g id=\"edge180\" class=\"edge\">\n",
       "<title>16&#45;&#45;&gt;12&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M65.5409,-834.1084C75.7932,-834.0823 87.6413,-834.052 98.6578,-834.0239\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"98.895,-837.5234 108.886,-833.9977 98.877,-830.5234 98.895,-837.5234\"/>\n",
       "</g>\n",
       "<!-- 18&#45;&#45;&gt;12&#45; -->\n",
       "<g id=\"edge181\" class=\"edge\">\n",
       "<title>18&#45;&#45;&gt;12&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M96.5451,-843.2297C97.8244,-842.9275 99.1184,-842.6217 100.4187,-842.3145\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"101.4444,-845.6686 110.3716,-839.9629 99.8347,-838.8562 101.4444,-845.6686\"/>\n",
       "</g>\n",
       "<!-- 18&#45;&#45;&gt;16&#45; -->\n",
       "<g id=\"edge182\" class=\"edge\">\n",
       "<title>18&#45;&#45;&gt;16&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M48.6376,-838.9651C48.593,-838.9443 48.5485,-838.9236 48.5041,-838.9029\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"58.9153,-839.8984 48.371,-838.8408 55.9544,-846.2431 58.9153,-839.8984\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;6&#45; -->\n",
       "<g id=\"edge183\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M112.4053,-638.5425C112.4095,-638.5504 112.4132,-638.5575 112.4164,-638.5635\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"104.6335,-631.3669 112.4243,-638.5787 110.8313,-628.0825 104.6335,-631.3669\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;7+ -->\n",
       "<g id=\"edge184\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M84.8833,-634.9989C77.9635,-639.9378 69.9663,-645.6457 62.4417,-651.0163\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"60.0246,-648.4414 53.9184,-657.0997 64.0912,-654.1391 60.0246,-648.4414\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;11+ -->\n",
       "<g id=\"edge185\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M109.5047,-639.3467C112.3345,-647.7058 115.7792,-657.881 118.938,-667.2119\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"115.6891,-668.53 122.2109,-676.8797 122.3195,-666.2854 115.6891,-668.53\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;23&#45; -->\n",
       "<g id=\"edge186\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M105.0649,-639.8763C105.6797,-647.1501 106.4027,-655.7031 107.0842,-663.7668\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"103.6139,-664.267 107.9439,-673.9366 110.5891,-663.6773 103.6139,-664.267\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;33&#45; -->\n",
       "<g id=\"edge187\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M100.9978,-639.8504C99.2693,-652.2564 96.9441,-668.9459 94.9737,-683.0881\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"91.4654,-682.9057 93.5519,-693.293 98.3984,-683.8717 91.4654,-682.9057\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;36+ -->\n",
       "<g id=\"edge188\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;36+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M80.0346,-631.0254C75.3624,-632.8816 70.3633,-634.8678 65.4045,-636.8379\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"64.0158,-633.6235 56.0147,-640.5685 66.6004,-640.1288 64.0158,-633.6235\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;40+ -->\n",
       "<g id=\"edge189\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;40+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M90.163,-637.5375C88.5119,-639.495 86.796,-641.5295 85.07,-643.576\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"82.2503,-641.4905 78.4785,-651.3912 87.6012,-646.0036 82.2503,-641.4905\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;44&#45; -->\n",
       "<g id=\"edge190\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M96.915,-639.3118C93.2636,-649.0415 88.6503,-661.3341 84.5507,-672.2579\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"81.2093,-671.2002 80.9725,-681.7924 87.763,-673.6598 81.2093,-671.2002\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;46&#45; -->\n",
       "<g id=\"edge191\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;46&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M76.3647,-623.143C76.2861,-623.1472 76.2075,-623.1514 76.1291,-623.1556\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"85.6914,-619.1355 75.8938,-623.1682 86.0677,-626.1256 85.6914,-619.1355\"/>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;29&#45; -->\n",
       "<g id=\"edge192\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M82.0005,-621.0451C81.9903,-621.0448 81.9813,-621.0445 81.9736,-621.0443\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"92.0722,-617.8952 81.9542,-621.0437 91.8273,-624.8921 92.0722,-617.8952\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;6&#45; -->\n",
       "<g id=\"edge193\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M102.4465,-632.8452C102.4896,-632.87 102.5326,-632.8947 102.5756,-632.9194\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"92.2892,-631.0361 102.7043,-632.9935 95.7831,-624.9684 92.2892,-631.0361\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;4+ -->\n",
       "<g id=\"edge194\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M74.582,-638.3934C69.3124,-650.8214 62.115,-667.7962 56.1046,-681.9714\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"52.8529,-680.6746 52.1714,-691.2475 59.2975,-683.4072 52.8529,-680.6746\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;7+ -->\n",
       "<g id=\"edge195\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M67.4364,-636.3867C64.1338,-639.8809 60.5544,-643.6679 57.024,-647.4031\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"54.2758,-645.2154 49.9503,-654.8871 59.363,-650.0237 54.2758,-645.2154\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;11+ -->\n",
       "<g id=\"edge196\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M92.4402,-637.7401C98.2569,-646.9883 105.6106,-658.6802 112.1362,-669.0554\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"109.3113,-671.1381 117.5981,-677.7396 115.2368,-667.4112 109.3113,-671.1381\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;23&#45; -->\n",
       "<g id=\"edge197\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M88.7507,-638.6585C91.8079,-646.5643 95.4862,-656.0759 98.891,-664.8805\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"95.7001,-666.333 102.5714,-674.3975 102.2289,-663.8082 95.7001,-666.333\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;33&#45; -->\n",
       "<g id=\"edge198\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M83.7775,-639.3333C85.0338,-651.829 86.7239,-668.639 88.1561,-682.8833\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"84.7066,-683.5624 89.1895,-693.162 91.6715,-682.862 84.7066,-683.5624\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;36+ -->\n",
       "<g id=\"edge199\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;36+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M61.3319,-632.9296C61.2411,-632.9819 61.1503,-633.0343 61.0594,-633.0867\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"59.4183,-629.9928 52.5049,-638.0211 62.9159,-636.0563 59.4183,-629.9928\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;40+ -->\n",
       "<g id=\"edge200\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;40+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M75.4187,-638.6959C75.204,-639.2769 74.9876,-639.863 74.7698,-640.4525\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"71.4034,-639.4654 71.2219,-650.0587 77.9698,-641.8907 71.4034,-639.4654\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;44&#45; -->\n",
       "<g id=\"edge201\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M80.1869,-639.2036C79.2718,-648.6907 78.1314,-660.5126 77.1046,-671.1579\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"73.6045,-670.9912 76.1281,-681.2811 80.5722,-671.6634 73.6045,-670.9912\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;46&#45; -->\n",
       "<g id=\"edge202\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;46&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M57.3626,-624.1533C57.3509,-624.1548 57.3407,-624.1561 57.3319,-624.1572\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"66.7779,-619.393 57.3098,-624.16 67.6841,-626.3379 66.7779,-619.393\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;6&#45; -->\n",
       "<g id=\"edge203\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M112.4946,-638.5717C112.484,-638.5749 112.4748,-638.5777 112.4669,-638.5801\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"121,-632.3123 112.4469,-638.5861 123.0455,-639.0154 121,-632.3123\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;7+ -->\n",
       "<g id=\"edge204\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M111.1095,-641.011C98.2405,-645.9982 82.1009,-652.2528 68.0245,-657.7079\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"66.734,-654.4543 58.6744,-661.3313 69.2634,-660.9813 66.734,-654.4543\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;11+ -->\n",
       "<g id=\"edge205\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M132.7943,-650.0326C132.2783,-655.0608 131.7054,-660.6437 131.1445,-666.11\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"127.6378,-665.9966 130.0986,-676.3017 134.6012,-666.7113 127.6378,-665.9966\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;23&#45; -->\n",
       "<g id=\"edge206\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M127.3791,-649.3616C125.311,-654.328 123.0089,-659.8564 120.7632,-665.2493\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"117.4578,-664.0823 116.8446,-674.6594 123.9199,-666.7733 117.4578,-664.0823\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;36+ -->\n",
       "<g id=\"edge207\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;36+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M108.3853,-636.6301C96.7877,-638.7245 82.9058,-641.2314 70.0974,-643.5444\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"69.3385,-640.1248 60.1197,-645.3463 70.5825,-647.0134 69.3385,-640.1248\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;40+ -->\n",
       "<g id=\"edge208\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;40+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M112.903,-643.0326C107.9891,-645.5506 102.6668,-648.2778 97.4129,-650.97\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"95.436,-648.0501 88.1325,-655.7254 98.6283,-654.2799 95.436,-648.0501\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;44&#45; -->\n",
       "<g id=\"edge209\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M120.6777,-647.5314C113.0708,-656.0454 103.5138,-666.7419 95.0617,-676.2018\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"92.3416,-673.9931 88.2889,-683.7822 97.5616,-678.657 92.3416,-673.9931\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;46&#45; -->\n",
       "<g id=\"edge210\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;46&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M107.5981,-629.1845C103.3333,-628.7587 98.8607,-628.3122 94.4156,-627.8684\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"94.5026,-624.3598 84.2043,-626.849 93.8071,-631.3252 94.5026,-624.3598\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;19&#45; -->\n",
       "<g id=\"edge211\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;19&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M110.1294,-623.8535C110.0691,-623.8337 110.0091,-623.8141 109.9493,-623.7945\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"120.3652,-623.5258 109.771,-623.7361 118.184,-630.1783 120.3652,-623.5258\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;29&#45; -->\n",
       "<g id=\"edge212\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M108.6064,-626.5281C108.5026,-626.5067 108.3989,-626.4854 108.2951,-626.464\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"118.4848,-624.9888 107.9838,-626.4 117.0729,-631.8454 118.4848,-624.9888\"/>\n",
       "</g>\n",
       "<!-- 35&#45;&#45;&gt;47&#45; -->\n",
       "<g id=\"edge213\" class=\"edge\">\n",
       "<title>35&#45;&#45;&gt;47&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M205.2164,-289.6597C205.2622,-289.6723 205.3079,-289.6848 205.3536,-289.6973\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"194.9189,-290.4629 205.4903,-289.7348 196.7721,-283.7115 194.9189,-290.4629\"/>\n",
       "</g>\n",
       "<!-- 30+ -->\n",
       "<g id=\"node47\" class=\"node\">\n",
       "<title>30+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"186.3609\" cy=\"-358.5502\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"186.3609\" y=\"-354.8502\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">30+</text>\n",
       "</g>\n",
       "<!-- 35&#45;&#45;&gt;30+ -->\n",
       "<g id=\"edge214\" class=\"edge\">\n",
       "<title>35&#45;&#45;&gt;30+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M181.7021,-301.1444C182.4118,-309.8895 183.2768,-320.5486 184.068,-330.2972\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"180.5891,-330.7003 184.8866,-340.3844 187.5662,-330.134 180.5891,-330.7003\"/>\n",
       "</g>\n",
       "<!-- 32+ -->\n",
       "<g id=\"node48\" class=\"node\">\n",
       "<title>32+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"151.6419\" cy=\"-351.4818\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"151.6419\" y=\"-347.7818\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">32+</text>\n",
       "</g>\n",
       "<!-- 35&#45;&#45;&gt;32+ -->\n",
       "<g id=\"edge215\" class=\"edge\">\n",
       "<title>35&#45;&#45;&gt;32+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M172.8561,-300.4945C169.8467,-307.7272 166.2963,-316.2606 162.9696,-324.256\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"159.6843,-323.041 159.0743,-333.6183 166.1473,-325.7301 159.6843,-323.041\"/>\n",
       "</g>\n",
       "<!-- 31&#45; -->\n",
       "<g id=\"node50\" class=\"node\">\n",
       "<title>31&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"218.9672\" cy=\"-366.822\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"218.9672\" y=\"-363.122\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">31&#45;</text>\n",
       "</g>\n",
       "<!-- 35&#45;&#45;&gt;31&#45; -->\n",
       "<g id=\"edge216\" class=\"edge\">\n",
       "<title>35&#45;&#45;&gt;31&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M188.2438,-300.2171C193.5438,-311.7069 200.5926,-326.9879 206.6016,-340.0147\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"203.5809,-341.8224 210.9478,-349.4369 209.9373,-338.8903 203.5809,-341.8224\"/>\n",
       "</g>\n",
       "<!-- 45&#45;&#45;&gt;35&#45; -->\n",
       "<g id=\"edge217\" class=\"edge\">\n",
       "<title>45&#45;&#45;&gt;35&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M162.2761,-239.8853C164.3506,-244.8495 166.6599,-250.3754 168.9125,-255.7659\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"165.758,-257.2946 172.8433,-265.1718 172.2167,-254.5955 165.758,-257.2946\"/>\n",
       "</g>\n",
       "<!-- 45&#45;&#45;&gt;47&#45; -->\n",
       "<g id=\"edge218\" class=\"edge\">\n",
       "<title>45&#45;&#45;&gt;47&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M168.7462,-238.3249C176.5825,-247.3777 186.5462,-258.8881 195.2738,-268.9706\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"192.7528,-271.4061 201.9439,-276.6762 198.0454,-266.8247 192.7528,-271.4061\"/>\n",
       "</g>\n",
       "<!-- 47&#45;&#45;&gt;30+ -->\n",
       "<g id=\"edge219\" class=\"edge\">\n",
       "<title>47&#45;&#45;&gt;30+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M207.9616,-309.8693C205.0242,-316.4891 201.6015,-324.2029 198.3581,-331.5123\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"194.9657,-330.5282 194.109,-341.0884 201.3641,-333.3674 194.9657,-330.5282\"/>\n",
       "</g>\n",
       "<!-- 47&#45;&#45;&gt;32+ -->\n",
       "<g id=\"edge220\" class=\"edge\">\n",
       "<title>47&#45;&#45;&gt;32+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M199.5051,-307.3992C192.3933,-313.9492 183.8846,-321.7858 176.0268,-329.023\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"173.4462,-326.6414 168.4617,-335.9905 178.1885,-331.7903 173.4462,-326.6414\"/>\n",
       "</g>\n",
       "<!-- 47&#45;&#45;&gt;31&#45; -->\n",
       "<g id=\"edge221\" class=\"edge\">\n",
       "<title>47&#45;&#45;&gt;31&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M216.477,-310.8874C216.8496,-319.2553 217.2989,-329.3485 217.7128,-338.6445\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"214.2175,-338.8323 218.1589,-348.6667 221.2106,-338.5209 214.2175,-338.8323\"/>\n",
       "</g>\n",
       "<!-- 24+ -->\n",
       "<g id=\"node45\" class=\"node\">\n",
       "<title>24+</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"168.5143\" cy=\"-430.1318\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"168.5143\" y=\"-426.4318\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">24+</text>\n",
       "</g>\n",
       "<!-- 24+&#45;&gt;2&#45; -->\n",
       "<g id=\"edge222\" class=\"edge\">\n",
       "<title>24+&#45;&gt;2&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M173.1656,-448.0611C175.4876,-457.0119 178.3487,-468.0406 180.9459,-478.0519\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"177.6241,-479.1859 183.5232,-487.9865 184.3998,-477.428 177.6241,-479.1859\"/>\n",
       "</g>\n",
       "<!-- 24+&#45;&gt;10+ -->\n",
       "<g id=\"edge223\" class=\"edge\">\n",
       "<title>24+&#45;&gt;10+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M161.2495,-447.7232C159.185,-452.7225 156.8868,-458.2874 154.645,-463.716\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"151.3153,-462.6095 150.7332,-473.1883 157.7853,-465.2815 151.3153,-462.6095\"/>\n",
       "</g>\n",
       "<!-- 24+&#45;&gt;17+ -->\n",
       "<g id=\"edge224\" class=\"edge\">\n",
       "<title>24+&#45;&gt;17+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M154.0757,-446.0487C149.2154,-451.4066 143.6802,-457.5085 138.386,-463.3449\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"135.5283,-461.2858 131.4018,-471.0441 140.713,-465.989 135.5283,-461.2858\"/>\n",
       "</g>\n",
       "<!-- 24+&#45;&gt;20+ -->\n",
       "<g id=\"edge225\" class=\"edge\">\n",
       "<title>24+&#45;&gt;20+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M150.3476,-445.0362C141.4478,-452.3378 130.5748,-461.2582 120.8308,-469.2524\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"118.4905,-466.6451 112.9794,-475.6938 122.9305,-472.0569 118.4905,-466.6451\"/>\n",
       "</g>\n",
       "<!-- 24+&#45;&gt;22+ -->\n",
       "<g id=\"edge226\" class=\"edge\">\n",
       "<title>24+&#45;&gt;22+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M167.3593,-448.1904C166.8752,-455.7601 166.3005,-464.7455 165.7617,-473.1706\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"162.2533,-473.191 165.1078,-483.394 169.239,-473.6378 162.2533,-473.191\"/>\n",
       "</g>\n",
       "<!-- 26&#45; -->\n",
       "<g id=\"node46\" class=\"node\">\n",
       "<title>26&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"142.3228\" cy=\"-418.5422\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"142.3228\" y=\"-414.8422\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">26&#45;</text>\n",
       "</g>\n",
       "<!-- 26&#45;&#45;&gt;2&#45; -->\n",
       "<g id=\"edge227\" class=\"edge\">\n",
       "<title>26&#45;&#45;&gt;2&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M151.375,-435.779C157.9015,-448.2063 166.8313,-465.2101 174.256,-479.3478\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"171.3594,-481.3601 179.1076,-488.5861 177.5568,-478.1054 171.3594,-481.3601\"/>\n",
       "</g>\n",
       "<!-- 26&#45;&#45;&gt;10+ -->\n",
       "<g id=\"edge228\" class=\"edge\">\n",
       "<title>26&#45;&#45;&gt;10+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M142.594,-436.8139C142.7108,-444.6772 142.8499,-454.0503 142.9794,-462.7697\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"139.4821,-462.9889 143.1303,-472.9358 146.4814,-462.8849 139.4821,-462.9889\"/>\n",
       "</g>\n",
       "<!-- 26&#45;&#45;&gt;17+ -->\n",
       "<g id=\"edge229\" class=\"edge\">\n",
       "<title>26&#45;&#45;&gt;17+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M135.7193,-436.242C133.0186,-443.4809 129.8322,-452.0215 126.8467,-460.0237\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"123.5671,-458.8013 123.3508,-469.3939 130.1256,-461.2482 123.5671,-458.8013\"/>\n",
       "</g>\n",
       "<!-- 26&#45;&#45;&gt;22+ -->\n",
       "<g id=\"edge230\" class=\"edge\">\n",
       "<title>26&#45;&#45;&gt;22+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M147.0128,-436.5853C149.8452,-447.4819 153.5135,-461.5941 156.7105,-473.8933\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"153.3532,-474.89 159.2564,-483.6879 160.128,-473.129 153.3532,-474.89\"/>\n",
       "</g>\n",
       "<!-- 26&#45;&#45;&gt;24+ -->\n",
       "<g id=\"edge231\" class=\"edge\">\n",
       "<title>26&#45;&#45;&gt;24+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M164.8725,-428.5203C164.9413,-428.5508 165.0094,-428.5809 165.0768,-428.6107\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"154.7141,-427.8506 165.2764,-428.6991 157.5486,-421.4491 154.7141,-427.8506\"/>\n",
       "</g>\n",
       "<!-- 30+&#45;&gt;24+ -->\n",
       "<g id=\"edge232\" class=\"edge\">\n",
       "<title>30+&#45;&gt;24+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M181.8574,-376.6133C179.8981,-384.4721 177.5584,-393.8566 175.3893,-402.5565\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"171.9776,-401.7728 172.9545,-412.3225 178.7697,-403.4663 171.9776,-401.7728\"/>\n",
       "</g>\n",
       "<!-- 30+&#45;&gt;26&#45; -->\n",
       "<g id=\"edge233\" class=\"edge\">\n",
       "<title>30+&#45;&gt;26&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M174.0938,-375.2613C169.8246,-381.0772 164.9423,-387.7282 160.3071,-394.0426\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"157.3163,-392.2023 154.2202,-402.3347 162.9592,-396.3445 157.3163,-392.2023\"/>\n",
       "</g>\n",
       "<!-- 30+&#45;&gt;32+ -->\n",
       "<g id=\"edge234\" class=\"edge\">\n",
       "<title>30+&#45;&gt;32+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M157.375,-352.649C157.3215,-352.6381 157.2682,-352.6272 157.2153,-352.6165\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"167.5563,-351.1545 157.0572,-352.5843 166.1563,-358.0139 167.5563,-351.1545\"/>\n",
       "</g>\n",
       "<!-- 43&#45; -->\n",
       "<g id=\"node49\" class=\"node\">\n",
       "<title>43&#45;</title>\n",
       "<ellipse fill=\"none\" stroke=\"#000000\" cx=\"208.6261\" cy=\"-434.4769\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"208.6261\" y=\"-430.7769\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">43&#45;</text>\n",
       "</g>\n",
       "<!-- 30+&#45;&gt;43&#45; -->\n",
       "<g id=\"edge235\" class=\"edge\">\n",
       "<title>30+&#45;&gt;43&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M191.6374,-376.5438C194.2994,-385.6213 197.5858,-396.8283 200.5566,-406.9591\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"197.2148,-408.0015 203.3874,-416.6125 203.9319,-406.0317 197.2148,-408.0015\"/>\n",
       "</g>\n",
       "<!-- 32+&#45;&gt;24+ -->\n",
       "<g id=\"edge236\" class=\"edge\">\n",
       "<title>32+&#45;&gt;24+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M155.5551,-369.7234C157.6355,-379.421 160.2369,-391.5472 162.562,-402.3853\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"159.1607,-403.217 164.6804,-412.2603 166.0049,-401.7486 159.1607,-403.217\"/>\n",
       "</g>\n",
       "<!-- 32+&#45;&gt;26&#45; -->\n",
       "<g id=\"edge237\" class=\"edge\">\n",
       "<title>32+&#45;&gt;26&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M149.1445,-369.4527C148.2462,-375.9173 147.21,-383.3733 146.221,-390.4908\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"142.7369,-390.135 144.827,-400.5216 149.6702,-391.0986 142.7369,-390.135\"/>\n",
       "</g>\n",
       "<!-- 32+&#45;&gt;43&#45; -->\n",
       "<g id=\"edge238\" class=\"edge\">\n",
       "<title>32+&#45;&gt;43&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M163.1735,-368.2771C171.3368,-380.1667 182.4208,-396.31 191.5994,-409.6783\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"188.7604,-411.727 197.3061,-417.9898 194.5312,-407.7648 188.7604,-411.727\"/>\n",
       "</g>\n",
       "<!-- 43&#45;&#45;&gt;2&#45; -->\n",
       "<g id=\"edge239\" class=\"edge\">\n",
       "<title>43&#45;&#45;&gt;2&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M203.4568,-452.4715C201.2078,-460.3005 198.5222,-469.6494 196.0325,-478.3163\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"192.6348,-477.4676 193.2377,-488.0453 199.3627,-479.4004 192.6348,-477.4676\"/>\n",
       "</g>\n",
       "<!-- 43&#45;&#45;&gt;10+ -->\n",
       "<g id=\"edge240\" class=\"edge\">\n",
       "<title>43&#45;&#45;&gt;10+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M191.8281,-449.0204C184.6939,-455.1971 176.2273,-462.5274 168.3843,-469.3178\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"166.0907,-466.674 160.8215,-475.8656 170.6726,-471.9661 166.0907,-466.674\"/>\n",
       "</g>\n",
       "<!-- 43&#45;&#45;&gt;22+ -->\n",
       "<g id=\"edge241\" class=\"edge\">\n",
       "<title>43&#45;&#45;&gt;22+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M197.5794,-451.0928C192.515,-458.7104 186.3999,-467.9086 180.7799,-476.3619\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"177.7891,-474.5388 175.1673,-484.8041 183.6184,-478.4143 177.7891,-474.5388\"/>\n",
       "</g>\n",
       "<!-- 43&#45;&#45;&gt;24+ -->\n",
       "<g id=\"edge242\" class=\"edge\">\n",
       "<title>43&#45;&#45;&gt;24+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M181.6484,-431.5546C181.5917,-431.5484 181.5351,-431.5423 181.4786,-431.5362\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"191.6299,-429.1204 181.3093,-431.5179 190.8724,-436.0797 191.6299,-429.1204\"/>\n",
       "</g>\n",
       "<!-- 43&#45;&#45;&gt;26&#45; -->\n",
       "<g id=\"edge243\" class=\"edge\">\n",
       "<title>43&#45;&#45;&gt;26&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M183.1811,-428.3617C181.4738,-427.9514 179.7377,-427.5341 177.9922,-427.1146\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"178.5696,-423.6538 168.0285,-424.7201 176.9338,-430.46 178.5696,-423.6538\"/>\n",
       "</g>\n",
       "<!-- 31&#45;&#45;&gt;24+ -->\n",
       "<g id=\"edge244\" class=\"edge\">\n",
       "<title>31&#45;&#45;&gt;24+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M206.2358,-382.7977C200.7477,-389.6843 194.2041,-397.8955 188.12,-405.53\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"185.2653,-403.4962 181.7702,-413.4979 190.7396,-407.8588 185.2653,-403.4962\"/>\n",
       "</g>\n",
       "<!-- 31&#45;&#45;&gt;26&#45; -->\n",
       "<g id=\"edge245\" class=\"edge\">\n",
       "<title>31&#45;&#45;&gt;26&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M199.6266,-379.8732C190.5716,-385.9835 179.6251,-393.3703 169.7359,-400.0436\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"167.7232,-397.1794 161.3917,-405.6743 171.6388,-402.9819 167.7232,-397.1794\"/>\n",
       "</g>\n",
       "<!-- 31&#45;&#45;&gt;30+ -->\n",
       "<g id=\"edge246\" class=\"edge\">\n",
       "<title>31&#45;&#45;&gt;30+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M193.5973,-360.386C193.5315,-360.3693 193.466,-360.3527 193.4008,-360.3361\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"203.7612,-359.3569 193.2062,-360.2867 202.0373,-366.1421 203.7612,-359.3569\"/>\n",
       "</g>\n",
       "<!-- 31&#45;&#45;&gt;32+ -->\n",
       "<g id=\"edge247\" class=\"edge\">\n",
       "<title>31&#45;&#45;&gt;32+</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M193.13,-360.9349C192.2215,-360.7279 191.3049,-360.5191 190.3832,-360.309\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"190.9657,-356.8521 180.438,-358.043 189.4105,-363.6772 190.9657,-356.8521\"/>\n",
       "</g>\n",
       "<!-- 31&#45;&#45;&gt;43&#45; -->\n",
       "<g id=\"edge248\" class=\"edge\">\n",
       "<title>31&#45;&#45;&gt;43&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#c0c0c0\" d=\"M216.1959,-384.9523C215.1991,-391.4741 214.0493,-398.9963 212.9518,-406.1769\"/>\n",
       "<polygon fill=\"#c0c0c0\" stroke=\"#c0c0c0\" points=\"209.4562,-405.8825 211.4049,-416.2966 216.3758,-406.9403 209.4562,-405.8825\"/>\n",
       "</g>\n",
       "</g>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<graphviz.dot.Digraph at 0x7fb89d3318d0>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "strand_graph_adjacency_matrix = nx.to_numpy_matrix(strand_graph)\n",
    "print('strand_adjacency_matrix size:', len(strand_graph_adjacency_matrix))\n",
    "\n",
    "edges = np.argwhere(strand_graph_adjacency_matrix==1).tolist()\n",
    "nodes = list(strand_graph.nodes)\n",
    "g = AcyclicGraphDNA.draw_graph(nodes, solve_edges=[], edges=edges)\n",
    "g.engine = 'neato'\n",
    "\n",
    "g"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "strand_graph_undirected = AcyclicGraphDNA.complement_to_undirected_graph(strand_graph)\n",
    "adjacency_matrix = nx.to_numpy_matrix(strand_graph_undirected)\n",
    "part_map, _ , _ = AcyclicGraphDNA.part_graph(cluster_number=3, adjacency_matrix=adjacency_matrix)\n",
    "\n",
    "graphs = []\n",
    "node_labels = list(strand_graph_undirected.nodes)\n",
    "for part, nodes_indices in part_map.items():\n",
    "    labels = [node_labels[i] for i in nodes_indices]\n",
    "    graphs.append(strand_graph.subgraph(labels))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "solve_edges=[]\n",
    "for pg in graphs:\n",
    "    adjacency_matrix = nx.to_numpy_matrix(pg)\n",
    "    edges_indices = np.argwhere(adjacency_matrix==1).tolist()\n",
    "\n",
    "    Q = AcyclicGraphDNA.to_qubo(adjacency_matrix)\n",
    "    target_energy = -2.0*len(adjacency_matrix)+2\n",
    "    solution = solve_dwave(Q, API_KEY=API_KEY)\n",
    "    spins, energy = [solution[0][i] for i in solution[0].keys()], solution[1]\n",
    "\n",
    "    solve_edges_idices=[]\n",
    "    for i in range(len(spins)):\n",
    "        if spins[i]==1:\n",
    "            solve_edges_idices.append(edges_indices[i])\n",
    "\n",
    "    node_labels = list(pg.nodes)\n",
    "    solve_edges_part = [(node_labels[e[0]], node_labels[e[1]]) for e in solve_edges_idices]\n",
    "    solve_edges+=solve_edges_part"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Generated by graphviz version 2.40.1 (20161225.0304)\n",
       " -->\n",
       "<!-- Title: %3 Pages: 1 -->\n",
       "<svg width=\"6357pt\" height=\"44pt\"\n",
       " viewBox=\"0.00 0.00 6356.61 44.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 40)\">\n",
       "<title>%3</title>\n",
       "<polygon fill=\"#ffffff\" stroke=\"transparent\" points=\"-4,4 -4,-40 6352.6078,-40 6352.6078,4 -4,4\"/>\n",
       "<!-- 3&#45; -->\n",
       "<g id=\"node1\" class=\"node\">\n",
       "<title>3&#45;</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"27\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"27\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">3&#45;</text>\n",
       "</g>\n",
       "<!-- 48+ -->\n",
       "<g id=\"node7\" class=\"node\">\n",
       "<title>48+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"156.5473\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"156.5473\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">48+</text>\n",
       "</g>\n",
       "<!-- 3&#45;&#45;&gt;48+ -->\n",
       "<g id=\"edge14\" class=\"edge\">\n",
       "<title>3&#45;&#45;&gt;48+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M54.1574,-18C71.9744,-18 95.6023,-18 115.6708,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"115.7913,-21.5001 125.7912,-18 115.7912,-14.5001 115.7913,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 5+ -->\n",
       "<g id=\"node2\" class=\"node\">\n",
       "<title>5+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"678.2837\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"678.2837\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">5+</text>\n",
       "</g>\n",
       "<!-- 28&#45; -->\n",
       "<g id=\"node4\" class=\"node\">\n",
       "<title>28&#45;</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"804.2837\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"804.2837\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">28&#45;</text>\n",
       "</g>\n",
       "<!-- 5+&#45;&gt;28&#45; -->\n",
       "<g id=\"edge5\" class=\"edge\">\n",
       "<title>5+&#45;&gt;28&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M705.3139,-18C723.2119,-18 746.9346,-18 766.6676,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"766.8635,-21.5001 776.8635,-18 766.8635,-14.5001 766.8635,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 8+ -->\n",
       "<g id=\"node3\" class=\"node\">\n",
       "<title>8+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"552.2837\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"552.2837\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">8+</text>\n",
       "</g>\n",
       "<!-- 8+&#45;&gt;5+ -->\n",
       "<g id=\"edge13\" class=\"edge\">\n",
       "<title>8+&#45;&gt;5+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M579.3139,-18C597.2119,-18 620.9346,-18 640.6676,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"640.8635,-21.5001 650.8635,-18 640.8635,-14.5001 640.8635,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 9+ -->\n",
       "<g id=\"node8\" class=\"node\">\n",
       "<title>9+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"930.2837\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"930.2837\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">9+</text>\n",
       "</g>\n",
       "<!-- 28&#45;&#45;&gt;9+ -->\n",
       "<g id=\"edge6\" class=\"edge\">\n",
       "<title>28&#45;&#45;&gt;9+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M831.3139,-18C849.2119,-18 872.9346,-18 892.6676,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"892.8635,-21.5001 902.8635,-18 892.8635,-14.5001 892.8635,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 38+ -->\n",
       "<g id=\"node5\" class=\"node\">\n",
       "<title>38+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"289.6419\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"289.6419\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">38+</text>\n",
       "</g>\n",
       "<!-- 41+ -->\n",
       "<g id=\"node6\" class=\"node\">\n",
       "<title>41+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"422.7364\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"422.7364\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">41+</text>\n",
       "</g>\n",
       "<!-- 38+&#45;&gt;41+ -->\n",
       "<g id=\"edge8\" class=\"edge\">\n",
       "<title>38+&#45;&gt;41+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M320.511,-18C338.7371,-18 362.0325,-18 381.7808,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"382.0348,-21.5001 392.0347,-18 382.0347,-14.5001 382.0348,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 41+&#45;&gt;8+ -->\n",
       "<g id=\"edge11\" class=\"edge\">\n",
       "<title>41+&#45;&gt;8+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M453.4373,-18C471.8301,-18 495.3469,-18 514.8276,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"514.8868,-21.5001 524.8868,-18 514.8868,-14.5001 514.8868,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 48+&#45;&gt;38+ -->\n",
       "<g id=\"edge10\" class=\"edge\">\n",
       "<title>48+&#45;&gt;38+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M187.4164,-18C205.6425,-18 228.9379,-18 248.6862,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"248.9402,-21.5001 258.9402,-18 248.9401,-14.5001 248.9402,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 34+ -->\n",
       "<g id=\"node9\" class=\"node\">\n",
       "<title>34+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"1059.831\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1059.831\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">34+</text>\n",
       "</g>\n",
       "<!-- 9+&#45;&gt;34+ -->\n",
       "<g id=\"edge2\" class=\"edge\">\n",
       "<title>9+&#45;&gt;34+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M957.4411,-18C975.2581,-18 998.8861,-18 1018.9545,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"1019.075,-21.5001 1029.075,-18 1019.0749,-14.5001 1019.075,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 50&#45; -->\n",
       "<g id=\"node12\" class=\"node\">\n",
       "<title>50&#45;</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"1189.3783\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1189.3783\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">50&#45;</text>\n",
       "</g>\n",
       "<!-- 34+&#45;&gt;50&#45; -->\n",
       "<g id=\"edge7\" class=\"edge\">\n",
       "<title>34+&#45;&gt;50&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M1090.5319,-18C1108.9247,-18 1132.4415,-18 1151.9222,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"1151.9814,-21.5001 1161.9814,-18 1151.9813,-14.5001 1151.9814,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 21&#45; -->\n",
       "<g id=\"node10\" class=\"node\">\n",
       "<title>21&#45;</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"1448.4729\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1448.4729\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">21&#45;</text>\n",
       "</g>\n",
       "<!-- 45&#45; -->\n",
       "<g id=\"node13\" class=\"node\">\n",
       "<title>45&#45;</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"1574.4729\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1574.4729\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">45&#45;</text>\n",
       "</g>\n",
       "<!-- 21&#45;&#45;&gt;45&#45; -->\n",
       "<g id=\"edge1\" class=\"edge\">\n",
       "<title>21&#45;&#45;&gt;45&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M1475.5031,-18C1493.401,-18 1517.1238,-18 1536.8568,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"1537.0527,-21.5001 1547.0527,-18 1537.0526,-14.5001 1537.0527,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 39+ -->\n",
       "<g id=\"node11\" class=\"node\">\n",
       "<title>39+</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"1318.9256\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1318.9256\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">39+</text>\n",
       "</g>\n",
       "<!-- 39+&#45;&gt;21&#45; -->\n",
       "<g id=\"edge9\" class=\"edge\">\n",
       "<title>39+&#45;&gt;21&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M1349.6265,-18C1368.0193,-18 1391.536,-18 1411.0168,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"1411.076,-21.5001 1421.076,-18 1411.0759,-14.5001 1411.076,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 50&#45;&#45;&gt;39+ -->\n",
       "<g id=\"edge12\" class=\"edge\">\n",
       "<title>50&#45;&#45;&gt;39+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M1216.5357,-18C1234.3527,-18 1257.9806,-18 1278.0491,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"1278.1696,-21.5001 1288.1695,-18 1278.1695,-14.5001 1278.1696,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 35&#45; -->\n",
       "<g id=\"node14\" class=\"node\">\n",
       "<title>35&#45;</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"1700.4729\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1700.4729\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">35&#45;</text>\n",
       "</g>\n",
       "<!-- 45&#45;&#45;&gt;35&#45; -->\n",
       "<g id=\"edge3\" class=\"edge\">\n",
       "<title>45&#45;&#45;&gt;35&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M1601.5031,-18C1619.401,-18 1643.1238,-18 1662.8568,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"1663.0527,-21.5001 1673.0527,-18 1663.0526,-14.5001 1663.0527,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 47&#45; -->\n",
       "<g id=\"node15\" class=\"node\">\n",
       "<title>47&#45;</title>\n",
       "<ellipse fill=\"#ffff00\" stroke=\"#000000\" cx=\"1826.4729\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1826.4729\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">47&#45;</text>\n",
       "</g>\n",
       "<!-- 35&#45;&#45;&gt;47&#45; -->\n",
       "<g id=\"edge4\" class=\"edge\">\n",
       "<title>35&#45;&#45;&gt;47&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M1727.5031,-18C1745.401,-18 1769.1238,-18 1788.8568,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"1789.0527,-21.5001 1799.0527,-18 1789.0526,-14.5001 1789.0527,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 31&#45; -->\n",
       "<g id=\"node46\" class=\"node\">\n",
       "<title>31&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"1952.4729\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"1952.4729\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">31&#45;</text>\n",
       "</g>\n",
       "<!-- 47&#45;&#45;&gt;31&#45; -->\n",
       "<g id=\"edge48\" class=\"edge\">\n",
       "<title>47&#45;&#45;&gt;31&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#ff0000\" d=\"M1853.5031,-18C1871.401,-18 1895.1238,-18 1914.8568,-18\"/>\n",
       "<polygon fill=\"#ff0000\" stroke=\"#ff0000\" points=\"1915.0527,-21.5001 1925.0527,-18 1915.0526,-14.5001 1915.0527,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 6&#45; -->\n",
       "<g id=\"node16\" class=\"node\">\n",
       "<title>6&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"4410.3241\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4410.3241\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">6&#45;</text>\n",
       "</g>\n",
       "<!-- 46&#45; -->\n",
       "<g id=\"node25\" class=\"node\">\n",
       "<title>46&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"4536.3241\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4536.3241\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">46&#45;</text>\n",
       "</g>\n",
       "<!-- 6&#45;&#45;&gt;46&#45; -->\n",
       "<g id=\"edge31\" class=\"edge\">\n",
       "<title>6&#45;&#45;&gt;46&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M4437.3543,-18C4455.2522,-18 4478.975,-18 4498.708,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"4498.9039,-21.5001 4508.9039,-18 4498.9038,-14.5001 4498.9039,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 4+ -->\n",
       "<g id=\"node17\" class=\"node\">\n",
       "<title>4+</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5565.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5565.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">4+</text>\n",
       "</g>\n",
       "<!-- 27&#45; -->\n",
       "<g id=\"node27\" class=\"node\">\n",
       "<title>27&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5691.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5691.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">27&#45;</text>\n",
       "</g>\n",
       "<!-- 4+&#45;&gt;27&#45; -->\n",
       "<g id=\"edge23\" class=\"edge\">\n",
       "<title>4+&#45;&gt;27&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5592.638,-18C5610.536,-18 5634.2587,-18 5653.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5654.1877,-21.5001 5664.1876,-18 5654.1876,-14.5001 5654.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 7+ -->\n",
       "<g id=\"node18\" class=\"node\">\n",
       "<title>7+</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"4928.5133\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4928.5133\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">7+</text>\n",
       "</g>\n",
       "<!-- 23&#45; -->\n",
       "<g id=\"node20\" class=\"node\">\n",
       "<title>23&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5054.5133\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5054.5133\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">23&#45;</text>\n",
       "</g>\n",
       "<!-- 7+&#45;&gt;23&#45; -->\n",
       "<g id=\"edge24\" class=\"edge\">\n",
       "<title>7+&#45;&gt;23&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M4955.5434,-18C4973.4414,-18 4997.1642,-18 5016.8972,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5017.0931,-21.5001 5027.093,-18 5017.093,-14.5001 5017.0931,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 11+ -->\n",
       "<g id=\"node19\" class=\"node\">\n",
       "<title>11+</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5184.0606\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5184.0606\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">11+</text>\n",
       "</g>\n",
       "<!-- 44&#45; -->\n",
       "<g id=\"node24\" class=\"node\">\n",
       "<title>44&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5313.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5313.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">44&#45;</text>\n",
       "</g>\n",
       "<!-- 11+&#45;&gt;44&#45; -->\n",
       "<g id=\"edge29\" class=\"edge\">\n",
       "<title>11+&#45;&gt;44&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5214.7615,-18C5233.1542,-18 5256.671,-18 5276.1517,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5276.2109,-21.5001 5286.2109,-18 5276.2109,-14.5001 5276.2109,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 23&#45;&#45;&gt;11+ -->\n",
       "<g id=\"edge21\" class=\"edge\">\n",
       "<title>23&#45;&#45;&gt;11+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5081.6706,-18C5099.4877,-18 5123.1156,-18 5143.1841,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5143.3045,-21.5001 5153.3045,-18 5143.3045,-14.5001 5143.3045,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 33&#45; -->\n",
       "<g id=\"node21\" class=\"node\">\n",
       "<title>33&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5439.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5439.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">33&#45;</text>\n",
       "</g>\n",
       "<!-- 33&#45;&#45;&gt;4+ -->\n",
       "<g id=\"edge22\" class=\"edge\">\n",
       "<title>33&#45;&#45;&gt;4+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5466.638,-18C5484.536,-18 5508.2587,-18 5527.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5528.1877,-21.5001 5538.1876,-18 5528.1876,-14.5001 5528.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 36+ -->\n",
       "<g id=\"node22\" class=\"node\">\n",
       "<title>36+</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"4798.966\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4798.966\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">36+</text>\n",
       "</g>\n",
       "<!-- 36+&#45;&gt;7+ -->\n",
       "<g id=\"edge16\" class=\"edge\">\n",
       "<title>36+&#45;&gt;7+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M4829.6669,-18C4848.0597,-18 4871.5764,-18 4891.0572,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"4891.1164,-21.5001 4901.1163,-18 4891.1163,-14.5001 4891.1164,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 40+ -->\n",
       "<g id=\"node23\" class=\"node\">\n",
       "<title>40+</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"4665.8714\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4665.8714\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">40+</text>\n",
       "</g>\n",
       "<!-- 40+&#45;&gt;36+ -->\n",
       "<g id=\"edge17\" class=\"edge\">\n",
       "<title>40+&#45;&gt;36+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M4696.7405,-18C4714.9666,-18 4738.262,-18 4758.0103,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"4758.2643,-21.5001 4768.2643,-18 4758.2642,-14.5001 4758.2643,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 44&#45;&#45;&gt;33&#45; -->\n",
       "<g id=\"edge27\" class=\"edge\">\n",
       "<title>44&#45;&#45;&gt;33&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5340.638,-18C5358.536,-18 5382.2587,-18 5401.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5402.1877,-21.5001 5412.1876,-18 5402.1876,-14.5001 5402.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 46&#45;&#45;&gt;40+ -->\n",
       "<g id=\"edge18\" class=\"edge\">\n",
       "<title>46&#45;&#45;&gt;40+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M4563.4815,-18C4581.2985,-18 4604.9264,-18 4624.9949,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"4625.1154,-21.5001 4635.1153,-18 4625.1153,-14.5001 4625.1154,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 15&#45; -->\n",
       "<g id=\"node26\" class=\"node\">\n",
       "<title>15&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5817.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5817.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">15&#45;</text>\n",
       "</g>\n",
       "<!-- 1&#45; -->\n",
       "<g id=\"node28\" class=\"node\">\n",
       "<title>1&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"5943.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"5943.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">1&#45;</text>\n",
       "</g>\n",
       "<!-- 15&#45;&#45;&gt;1&#45; -->\n",
       "<g id=\"edge19\" class=\"edge\">\n",
       "<title>15&#45;&#45;&gt;1&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5844.638,-18C5862.536,-18 5886.2587,-18 5905.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5906.1877,-21.5001 5916.1876,-18 5906.1876,-14.5001 5906.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 27&#45;&#45;&gt;15&#45; -->\n",
       "<g id=\"edge20\" class=\"edge\">\n",
       "<title>27&#45;&#45;&gt;15&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5718.638,-18C5736.536,-18 5760.2587,-18 5779.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"5780.1877,-21.5001 5790.1876,-18 5780.1876,-14.5001 5780.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 18&#45; -->\n",
       "<g id=\"node31\" class=\"node\">\n",
       "<title>18&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"6069.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"6069.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">18&#45;</text>\n",
       "</g>\n",
       "<!-- 1&#45;&#45;&gt;18&#45; -->\n",
       "<g id=\"edge28\" class=\"edge\">\n",
       "<title>1&#45;&#45;&gt;18&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M5970.638,-18C5988.536,-18 6012.2587,-18 6031.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"6032.1877,-21.5001 6042.1876,-18 6032.1876,-14.5001 6032.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 12&#45; -->\n",
       "<g id=\"node29\" class=\"node\">\n",
       "<title>12&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"6321.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"6321.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">12&#45;</text>\n",
       "</g>\n",
       "<!-- 16&#45; -->\n",
       "<g id=\"node30\" class=\"node\">\n",
       "<title>16&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"6195.6078\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"6195.6078\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">16&#45;</text>\n",
       "</g>\n",
       "<!-- 16&#45;&#45;&gt;12&#45; -->\n",
       "<g id=\"edge15\" class=\"edge\">\n",
       "<title>16&#45;&#45;&gt;12&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M6222.638,-18C6240.536,-18 6264.2587,-18 6283.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"6284.1877,-21.5001 6294.1876,-18 6284.1876,-14.5001 6284.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 18&#45;&#45;&gt;16&#45; -->\n",
       "<g id=\"edge30\" class=\"edge\">\n",
       "<title>18&#45;&#45;&gt;16&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M6096.638,-18C6114.536,-18 6138.2587,-18 6157.9918,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"6158.1877,-21.5001 6168.1876,-18 6158.1876,-14.5001 6158.1877,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 19&#45; -->\n",
       "<g id=\"node32\" class=\"node\">\n",
       "<title>19&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"4158.3241\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4158.3241\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">19&#45;</text>\n",
       "</g>\n",
       "<!-- 29&#45; -->\n",
       "<g id=\"node33\" class=\"node\">\n",
       "<title>29&#45;</title>\n",
       "<ellipse fill=\"#ff0000\" stroke=\"#000000\" cx=\"4284.3241\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4284.3241\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">29&#45;</text>\n",
       "</g>\n",
       "<!-- 19&#45;&#45;&gt;29&#45; -->\n",
       "<g id=\"edge26\" class=\"edge\">\n",
       "<title>19&#45;&#45;&gt;29&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M4185.3543,-18C4203.2522,-18 4226.975,-18 4246.708,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"4246.9039,-21.5001 4256.9039,-18 4246.9038,-14.5001 4246.9039,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 29&#45;&#45;&gt;6&#45; -->\n",
       "<g id=\"edge25\" class=\"edge\">\n",
       "<title>29&#45;&#45;&gt;6&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M4311.3543,-18C4329.2522,-18 4352.975,-18 4372.708,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"4372.9039,-21.5001 4382.9039,-18 4372.9038,-14.5001 4372.9039,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 2&#45; -->\n",
       "<g id=\"node34\" class=\"node\">\n",
       "<title>2&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2729.7566\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2729.7566\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">2&#45;</text>\n",
       "</g>\n",
       "<!-- 22+ -->\n",
       "<g id=\"node39\" class=\"node\">\n",
       "<title>22+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2859.3039\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2859.3039\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">22+</text>\n",
       "</g>\n",
       "<!-- 2&#45;&#45;&gt;22+ -->\n",
       "<g id=\"edge35\" class=\"edge\">\n",
       "<title>2&#45;&#45;&gt;22+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M2756.914,-18C2774.731,-18 2798.359,-18 2818.4274,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2818.5479,-21.5001 2828.5479,-18 2818.5478,-14.5001 2818.5479,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 10+ -->\n",
       "<g id=\"node35\" class=\"node\">\n",
       "<title>10+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2992.3985\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2992.3985\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">10+</text>\n",
       "</g>\n",
       "<!-- 17+ -->\n",
       "<g id=\"node37\" class=\"node\">\n",
       "<title>17+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"3125.4931\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"3125.4931\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">17+</text>\n",
       "</g>\n",
       "<!-- 10+&#45;&gt;17+ -->\n",
       "<g id=\"edge45\" class=\"edge\">\n",
       "<title>10+&#45;&gt;17+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3023.2676,-18C3041.4937,-18 3064.7891,-18 3084.5374,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3084.7914,-21.5001 3094.7914,-18 3084.7913,-14.5001 3084.7914,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 14&#45; -->\n",
       "<g id=\"node36\" class=\"node\">\n",
       "<title>14&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"3773.2295\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"3773.2295\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">14&#45;</text>\n",
       "</g>\n",
       "<!-- 13+ -->\n",
       "<g id=\"node43\" class=\"node\">\n",
       "<title>13+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"3902.7768\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"3902.7768\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">13+</text>\n",
       "</g>\n",
       "<!-- 14&#45;&#45;&gt;13+ -->\n",
       "<g id=\"edge44\" class=\"edge\">\n",
       "<title>14&#45;&#45;&gt;13+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3800.3869,-18C3818.2039,-18 3841.8319,-18 3861.9003,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3862.0208,-21.5001 3872.0207,-18 3862.0207,-14.5001 3862.0208,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 20+ -->\n",
       "<g id=\"node38\" class=\"node\">\n",
       "<title>20+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"3258.5877\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"3258.5877\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">20+</text>\n",
       "</g>\n",
       "<!-- 17+&#45;&gt;20+ -->\n",
       "<g id=\"edge36\" class=\"edge\">\n",
       "<title>17+&#45;&gt;20+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3156.3622,-18C3174.5883,-18 3197.8837,-18 3217.632,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3217.886,-21.5001 3227.886,-18 3217.8859,-14.5001 3217.886,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 42&#45; -->\n",
       "<g id=\"node41\" class=\"node\">\n",
       "<title>42&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"3388.1349\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"3388.1349\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">42&#45;</text>\n",
       "</g>\n",
       "<!-- 20+&#45;&gt;42&#45; -->\n",
       "<g id=\"edge47\" class=\"edge\">\n",
       "<title>20+&#45;&gt;42&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3289.2886,-18C3307.6813,-18 3331.1981,-18 3350.6788,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3350.738,-21.5001 3360.738,-18 3350.738,-14.5001 3350.738,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 22+&#45;&gt;10+ -->\n",
       "<g id=\"edge38\" class=\"edge\">\n",
       "<title>22+&#45;&gt;10+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M2890.173,-18C2908.3991,-18 2931.6946,-18 2951.4429,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2951.6968,-21.5001 2961.6968,-18 2951.6968,-14.5001 2951.6968,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 25+ -->\n",
       "<g id=\"node40\" class=\"node\">\n",
       "<title>25+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"3643.6822\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"3643.6822\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">25+</text>\n",
       "</g>\n",
       "<!-- 25+&#45;&gt;14&#45; -->\n",
       "<g id=\"edge37\" class=\"edge\">\n",
       "<title>25+&#45;&gt;14&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3674.3831,-18C3692.7759,-18 3716.2927,-18 3735.7734,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3735.8326,-21.5001 3745.8326,-18 3735.8326,-14.5001 3735.8326,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 49&#45; -->\n",
       "<g id=\"node42\" class=\"node\">\n",
       "<title>49&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"3514.1349\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"3514.1349\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">49&#45;</text>\n",
       "</g>\n",
       "<!-- 42&#45;&#45;&gt;49&#45; -->\n",
       "<g id=\"edge41\" class=\"edge\">\n",
       "<title>42&#45;&#45;&gt;49&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3415.1651,-18C3433.0631,-18 3456.7859,-18 3476.5189,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3476.7148,-21.5001 3486.7147,-18 3476.7147,-14.5001 3476.7148,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 49&#45;&#45;&gt;25+ -->\n",
       "<g id=\"edge32\" class=\"edge\">\n",
       "<title>49&#45;&#45;&gt;25+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3541.2923,-18C3559.1093,-18 3582.7373,-18 3602.8057,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3602.9262,-21.5001 3612.9262,-18 3602.9261,-14.5001 3602.9262,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 37&#45; -->\n",
       "<g id=\"node44\" class=\"node\">\n",
       "<title>37&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"4032.3241\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"4032.3241\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">37&#45;</text>\n",
       "</g>\n",
       "<!-- 13+&#45;&gt;37&#45; -->\n",
       "<g id=\"edge39\" class=\"edge\">\n",
       "<title>13+&#45;&gt;37&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M3933.4777,-18C3951.8705,-18 3975.3873,-18 3994.868,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"3994.9272,-21.5001 4004.9272,-18 3994.9271,-14.5001 3994.9272,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 37&#45;&#45;&gt;19&#45; -->\n",
       "<g id=\"edge49\" class=\"edge\">\n",
       "<title>37&#45;&#45;&gt;19&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#ff0000\" d=\"M4059.3543,-18C4077.2522,-18 4100.975,-18 4120.708,-18\"/>\n",
       "<polygon fill=\"#ff0000\" stroke=\"#ff0000\" points=\"4120.9039,-21.5001 4130.9039,-18 4120.9038,-14.5001 4120.9039,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 30+ -->\n",
       "<g id=\"node45\" class=\"node\">\n",
       "<title>30+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2082.0202\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2082.0202\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">30+</text>\n",
       "</g>\n",
       "<!-- 32+ -->\n",
       "<g id=\"node47\" class=\"node\">\n",
       "<title>32+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2215.1148\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2215.1148\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">32+</text>\n",
       "</g>\n",
       "<!-- 30+&#45;&gt;32+ -->\n",
       "<g id=\"edge43\" class=\"edge\">\n",
       "<title>30+&#45;&gt;32+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M2112.8893,-18C2131.1154,-18 2154.4108,-18 2174.1591,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2174.4131,-21.5001 2184.4131,-18 2174.413,-14.5001 2174.4131,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 31&#45;&#45;&gt;30+ -->\n",
       "<g id=\"edge40\" class=\"edge\">\n",
       "<title>31&#45;&#45;&gt;30+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M1979.6303,-18C1997.4473,-18 2021.0752,-18 2041.1437,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2041.2642,-21.5001 2051.2641,-18 2041.2641,-14.5001 2041.2642,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 43&#45; -->\n",
       "<g id=\"node50\" class=\"node\">\n",
       "<title>43&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2344.6621\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2344.6621\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">43&#45;</text>\n",
       "</g>\n",
       "<!-- 32+&#45;&gt;43&#45; -->\n",
       "<g id=\"edge46\" class=\"edge\">\n",
       "<title>32+&#45;&gt;43&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M2245.8157,-18C2264.2084,-18 2287.7252,-18 2307.2059,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2307.2652,-21.5001 2317.2651,-18 2307.2651,-14.5001 2307.2652,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 24+ -->\n",
       "<g id=\"node48\" class=\"node\">\n",
       "<title>24+</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2600.2093\" cy=\"-18\" rx=\"30.5947\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2600.2093\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">24+</text>\n",
       "</g>\n",
       "<!-- 24+&#45;&gt;2&#45; -->\n",
       "<g id=\"edge42\" class=\"edge\">\n",
       "<title>24+&#45;&gt;2&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M2630.9102,-18C2649.303,-18 2672.8198,-18 2692.3005,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2692.3597,-21.5001 2702.3597,-18 2692.3597,-14.5001 2692.3597,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 26&#45; -->\n",
       "<g id=\"node49\" class=\"node\">\n",
       "<title>26&#45;</title>\n",
       "<ellipse fill=\"#00ff00\" stroke=\"#000000\" cx=\"2470.6621\" cy=\"-18\" rx=\"27\" ry=\"18\"/>\n",
       "<text text-anchor=\"middle\" x=\"2470.6621\" y=\"-14.3\" font-family=\"Times,serif\" font-size=\"14.00\" fill=\"#000000\">26&#45;</text>\n",
       "</g>\n",
       "<!-- 26&#45;&#45;&gt;24+ -->\n",
       "<g id=\"edge34\" class=\"edge\">\n",
       "<title>26&#45;&#45;&gt;24+</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M2497.8194,-18C2515.6364,-18 2539.2644,-18 2559.3328,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2559.4533,-21.5001 2569.4533,-18 2559.4532,-14.5001 2559.4533,-21.5001\"/>\n",
       "</g>\n",
       "<!-- 43&#45;&#45;&gt;26&#45; -->\n",
       "<g id=\"edge33\" class=\"edge\">\n",
       "<title>43&#45;&#45;&gt;26&#45;</title>\n",
       "<path fill=\"none\" stroke=\"#87cefa\" d=\"M2371.6922,-18C2389.5902,-18 2413.313,-18 2433.046,-18\"/>\n",
       "<polygon fill=\"#87cefa\" stroke=\"#87cefa\" points=\"2433.2419,-21.5001 2443.2418,-18 2433.2418,-14.5001 2433.2419,-21.5001\"/>\n",
       "</g>\n",
       "</g>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<graphviz.dot.Digraph at 0x7fb8ecec19e8>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "g = AcyclicGraphDNA.draw_solution(graphs, strand_graph, strand_graph_undirected, part_map, solve_edges, show_all_edges=False)\n",
    "g.engine = 'circo'\n",
    "g"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
